这可能相当简单或不可能,但我似乎无法顺其自然。我正在尝试运行位于远程服务器上的脚本,并且我的.bashrc中有以下别名:
alias fin='sh username@host.co.uk:~/scripts/finder.sh'
我已为该主机设置了SSH密钥身份验证,但是我收到以下错误:
sh: 0: Can't openusername@host.co.uk:~/scripts/finder.sh
有人可以帮忙,谢谢:)
答案 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