通过telnet运行“远程”shell(远程服务器上没有ssh),我需要等待远程shell端发送连接关闭i / o“sleep”。
。 my_local_shell |远程登录
#!bin/bash
# run remote shell
echo "remote_shell.sh \"required_parameters\""
sleep 30
echo close XX
我需要的是:
# run remote shell
echo "remote_shell.sh \"required_parameters\" &"
echo "wait $!"
echo close XX
但我无法让它工作,因为我猜远程pid与当地的pid“混合”。
如何实现这一目标?
答案 0 :(得分:1)
你需要逃脱美元符号。
echo "wait \$!"
或
echo 'wait $!'
现在,您可以在本地shell中扩展特殊变量。通过转义它,扩展会因为远程shell而延迟。