Não é exatamente o que você pediu, mas eu uso s para executar scripts. Então, por exemplo, se eu tiver um arquivo ~ / Scripts / run-stuff.sh, eu posso digitar s run-stuff.sh e ele irá rodar o script. Ele também fará a conclusão da guia do nome do script. A única coisa que ele não faz é manipular subdiretórios no diretório de scripts.
# Completion for s (scripts)
_s_comp() {
if [ $OS = "mac" ]; then
local LS=gls;
else
local LS=ls;
fi
reply=('$LS --ignore-backups $HOME/Scripts/');
}
compctl -K _s_comp s
É possível que você também precise de um alias como alias s="$HOME/Scripts
Editar: observe que isso funcionará independentemente do diretório em que você está no momento.