您可以在远程运行的shell脚本中提示用户输入吗?

时间:2015-07-10 15:16:30

标签: linux bash shell

假设我有一个将在远程计算机上运行的脚本。 运行时,脚本会计算一些值。 我想提示用户,以便她可以根据需要更改此值。 这可能吗?

我正在运行脚本:ssh $usr@$machine 'bash -s' < a.sh "param1" "param2"

在a.sh中,read alternateValue函数调用似乎被忽略了。

或者任何人都可以提出不同的方法吗?

1 个答案:

答案 0 :(得分:2)

read语句从 stdin 读取数据,但您使用<运算符在命令行中重定向 stdin ,因此{{ 1}}不会做任何有用的事情。

如果您第一次脚本复制到远程主机,然后运行:

,该怎么办?
read

由于此处没有重定向,ssh $usr@$machine 'bash /path/to/a.sh param1 param2' 可以顺利运行。