В zshэтом все отлично работает:
alias foo=ls
foo
Но это не так:
alias foo=ls; foo
Нажатие ввода дополнительное время не является проблемой при работе в интерактивном режиме. Но когда пробег через sshэто внезапно становится проблемой:
% ssh zsh@server 'alias foo=ls; foo'
zsh:1: command not found: foo
Даже с новой строкой это не работает:
% ssh zsh@server 'alias foo=ls;
foo'
zsh:2: command not found: foo
Странная вещь в том, что zshзнает, что это псевдоним:
% ssh zsh@server 'alias foo=ls; alias'
foo=ls
run-help=man
which-command=whence
Как сказать, zshчто псевдонимы должны быть активными?
bashиcshони вели себя так же. Я надеюсь, что кто-то может объяснить это.