w bash, można użyć następującego kodu:rozpakować ciąg w zmiennej
[ "$sshcmd" = "" ] && sshcmd="ssh -someopts myhost"
$sshcmd "echo hello world"
W zsh, ten sam kod nie działa, ponieważ stara się znaleźć „ssh -someopts myhost” wykonywalny. Jak mogę zrobić to samo w ZSH?
Dzięki Albert
Patrz [BashFAQ/050] (http://mywiki.wooledge.org/BashFAQ/050). –
@Dennis: Jestem drugim przypadkiem, ale w moim przypadku użytkownik przekazuje komendę za pośrednictwem parametru lub zmiennej env do skryptu. A jeśli nie, skrypt używa pewnych wartości domyślnych. Jak rozwiązać ten problem? – Albert
Prawdopodobnie będziesz musiał użyć sugestii w odpowiedzi (i komentarzu) poniżej (które są zgodne z informacjami pod tym linkiem). Należy jednak pamiętać, że istnieje potencjalny wpływ na bezpieczeństwo wykonywania poleceń przekazywanych jako argumenty. –