Costumo usar o Eshell para conectar-me a sistemas remotos. Nesses sistemas remotos, às vezes, quero executar scripts no diretório de trabalho atual. Em um terminal regular, eu digitaria o seguinte:
./my-script.sh
Infelizmente, dentro do Eshell isso não funcionará:
~ $ cd /remote1:~
/ssh:remote1:/home/rekado $ ./my-script.sh
env: /ssh:remote1:/home/rekado/my-script.sh: No such file or directory
/ssh:remote1:/home/rekado $
Funciona apenas se eu fornecer o caminho completo do TRAMP para o script:
/ssh:remote1:/home/rekado $ /ssh:remote1:/home/rekado/my-script.sh
It works!
/ssh:remote1:/home/rekado $
Existe uma maneira de convencer Eshell a expandir .
automaticamente, de modo que a chamada mais simples funcione?
Como solução alternativa, atualmente uso uma função vinculada a C-c .
que insere o caminho completo atual na linha de comando. Eu preferiria ter .
apenas me comportado como esperado.