1

我无法使用参数运行位于“admin”服务器上的远程 shell 脚本。

ssh koliwada@admin "~/bin/addautomaps $groupentry $homeentry $ticket"

“groupentry”和“homeentry”如下

user1:*:52940:OWNER-user1
user1       -rw,intr,hard,rsize=32768,wsize=32768 basinas01:/ifs/basinas01/home/&

该脚本位于管理服务器中的 ~/bin/addautomaps 中。

我看到错误,

tput: No value for $TERM and no -T specified

我还看到参数也没有正确传递。我也尝试过使用“ssh -t ...”,但这不起作用。

4

1 回答 1

0

以相反的顺序(或从最严重到最不严重)回答您的问题。

您的参数(带空格)未正确传递的问题是,当您在本地引用命令字符串时,当它们实际由远程计算机运行时,您并没有引用它们。

也就是说,您正在生成一个带有扩展变量的字符串,但没有告诉远程系统不要在空格上拆分扩展值。

解决方法是您需要引用远程 shell 命令中的参数以及 ssh 的整个字符串。

在这里的回答可能有助于解释一些(这是一个类似的问题)。

tput如果您不关心彩色/程式化/等,“问题”可能只是一个警告,您可能会忽略它。tput可能用于创建的输出。$TERM您也可以尝试在远程端强制一个值ssh ... "export TERM=dumb; ..."或类似的东西来使其静音。

于 2016-05-03T19:42:56.503 回答