Często używam Eshell do łączenia się ze zdalnymi systemami. Na tych zdalnych systemach czasami chcę uruchamiać skrypty w bieżącym katalogu roboczym. W zwykłym terminalu wpisałbym to:
./my-script.sh
Niestety wewnątrz Eshella to nie zadziała:
~ $ 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 $
Działa to tylko wtedy, gdy podam pełną ścieżkę TRAMP do skryptu:
/ssh:remote1:/home/rekado $ /ssh:remote1:/home/rekado/my-script.sh
It works!
/ssh:remote1:/home/rekado $
Czy istnieje sposób przekonania Eshell do .
automatycznego rozszerzenia, tak aby działało prostsze wywołanie?
Jako obejście używam obecnie funkcji powiązanej z C-c .
tą, która wstawia bieżącą pełną ścieżkę do wiersza poleceń. Wolałbym .
zachowywać się zgodnie z oczekiwaniami.