BASH别名在另一台服务器上运行脚本

时间:2015-11-05 16:49:07

标签: bash

这可能相当简单或不可能,但我似乎无法顺其自然。我正在尝试运行位于远程服务器上的脚本,并且我的.bashrc中有以下别名:

alias fin='sh username@host.co.uk:~/scripts/finder.sh'

我已为该主机设置了SSH密钥身份验证,但是我收到以下错误:

sh: 0: Can't openusername@host.co.uk:~/scripts/finder.sh

有人可以帮忙,谢谢:)

2 个答案:

答案 0 :(得分:4)

您不能将远程脚本称为文件名。您可以使用ssh,但语法略有不同。

ssh username@host.co.uk scripts/finder.sh

顺便说一下,功能通常比别名更好。

fin () {
    ssh username@host.co.uk scripts/finder.sh "$@"
}

"$@"用于传递参数。如果脚本没有参数,则可以省略。

答案 1 :(得分:1)

Owner

您需要确保alias fin='ssh username@host.co.uk /home/username/scripts/finder.sh'具有执行权限并在host.co.uk上以用户finder.sh

本地运行
相关问题