A menudo uso Eshell para conectarme a sistemas remotos. En esos sistemas remotos, a veces quiero ejecutar scripts en el directorio de trabajo actual. En una terminal normal, escribiría esto:
./my-script.sh
Desafortunadamente, dentro de Eshell esto no 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 $
Solo funciona si proporciono la ruta TRAMP completa al script:
/ssh:remote1:/home/rekado $ /ssh:remote1:/home/rekado/my-script.sh
It works!
/ssh:remote1:/home/rekado $
¿Hay alguna manera de convencer a Eshell para que se expanda .
automáticamente de modo que la invocación más simple simplemente funcione?
Como solución alternativa, actualmente utilizo una función vinculada a C-c .
que inserta la ruta completa actual en la línea de comando. Prefiero que me .
comporte como se esperaba.