如何将csh转换为需要参数的zsh别名

时间:2015-05-07 15:49:00

标签: zsh zshrc

使用csh时,我使用此别名:

alias s autossh -M 0 -t \!:1 \"tmux -2 attach -t $USER\!:2 -d \|\| tmux -2 new -s $USER\!:2 \"

这可以帮助我使用类似的东西ssh到远程服务器:

s 10.11.12.3 X

其中X是远程tmux会话的后缀$USERX,我可以附加或创建该会话,以防它不存在。

我目前正在使用zsh,但我想继续使用相同的别名,因此我想知道如何正确地将此别名转换为在zsh下工作。

1 个答案:

答案 0 :(得分:0)

使用shell函数。 csh仅使用别名,因为它没有函数。

s () {
    autossh -M 0 -t "$1" "tmux -2 attach -t $USER$2 -d || tmux -2 new -s $USER$2 "
}

(我认为我正确地替换了参数,但是自从我使用csh以来已经过了几十年。)