请告诉我,我遗漏了一些非常明显的东西:
$ cat ~/bashplay/f
#!/bin/bash
read -p 'RDY> ' x
echo $x
$ ~/bashplay/f
RDY> direct execution
direct execution
$ ssh somehost ~/bashplay/f
indirect via ssh
indirect via ssh
注意缺少“RDY>”使用ssh时提示。使用“readline”包时,我在python中看到了同样的东西。谁知道为什么?
答案 0 :(得分:5)
来自man bash
:
-p提示
标准错误显示提示,没有尾随新的 - 在尝试读取任何输入之前。提示是 仅在输入来自终端时显示。
使用强制伪tty分配的ssh
选项-t
:
ssh -t somehost ~/bashplay/f