别名命令在 ssh 中也有效

别名命令在 ssh 中也有效

我有一些经常使用的命令,但它们很难记住,例如lsof -i -P -n | grep LISTEN。我想为它们创建一个别名,当通过 ssh 登录另一台服务器时也适用。这可能吗?

答案1

这是不可能的。您需要在其他服务器上定义您的别名。

答案2

不要在远程主机上定义别名,而是定义本地别名以远程执行命令。因此,您无需在本地计算机上执行此操作,而是可以先执行$ ssh bar@foo然后执行:lsof -P -i -n | grep LISTEN

$ alias foolsof='ssh bar@foo "lsof -i -P -n" | grep LISTEN'
$ foolsof

请注意,管道和重定向可能很棘手,上述命令中的 grep 在您的本地机器上执行。

答案3

您无法创建别名,但可以将 shell 变量替换到无人值守的 ssh 会话中。我有时会用它来定义脚本中的标志。

导出 THAT_COMMAND_YOU_LIKE="aptitude moo"

ssh 用户@服务器“sudo $THAT_COMMAND_YOU_LIKE”

相关内容