In zshdieser funktioniert gut:
alias foo=ls
foo
Das geht aber nicht:
alias foo=ls; foo
Das Drücken einer zusätzlichen Zeit ist bei interaktiver Ausführung kein Problem. Aber beim Durchlaufen wird sshes plötzlich zum Problem:
% ssh zsh@server 'alias foo=ls; foo'
zsh:1: command not found: foo
Auch mit einer Newline funktioniert es nicht:
% ssh zsh@server 'alias foo=ls;
foo'
zsh:2: command not found: foo
Das zshSeltsame ist, dass man weiß , dass es ein Alias ist:
% ssh zsh@server 'alias foo=ls; alias'
foo=ls
run-help=man
which-command=whence
Wie können Sie feststellen, zshdass die Aliase aktiv sein sollten?
bashund versuchtcshund sie haben sich genauso verhalten. Ich hoffe jemand konnte das erklären.