Vou apenas dar uma instrução passo a passo para um rápido script que eu fiz.
cd ~/.local/bin
cat > searchlynx
(or use nano,vi,gedit or whatever you prefer)
Cole o script a seguir com ctrl + shift + v
#!/bin/bash
printf "\nA twilit bookshelf, somewhere\n\n"
cd /home/a/Downloads && ls -a
printf '\n'
echo 'Input filename:'
read -e FileName
FileFindTest="$(find ~/Downloads/"$FileName")" ## quoted
echo "$FileFindTest"
echo 'Open with what program?'
read command
$command $FileName
Em seguida, pressione enter e saia com ctrl + c. Você precisará alterar as permissões do arquivo.
chmod u+x searchlynx
Uso:
searchlynx
Diretório será listado, aba auto completa funciona em arquivos na pasta. Você terá que inserir manualmente lynx, xdg-open ou qualquer outra coisa depois de selecionar qual arquivo abrir. Estou cansado, e acho que a última parte (aba conclusão do programa a ser executado) pode ser deixada como um exercício para você até que eu tenha mais tempo em minhas mãos. (espero que você aprenda a fazer isso olhando para o que eu fiz por você aqui agora :) Estou interessado em ajudá-lo a resolver o problema, mas talvez seja uma semana ou mais até que eu tenha tempo para ver de novo.
Por favor, aceite como resposta se for bom o suficiente para você.
Isso pelo menos me motivará a ajudá-lo a resolver seu último problema com a conclusão da guia dos nomes dos programas.
Referência: Posso implementar o autocomplete da guia em um script bash?