无法从脚本向屏幕会话发送Enter-Stroke

时间:2014-07-12 12:53:44

标签: shell sh gnu-screen enter

我想从另一个屏幕会话(B)控制屏幕会话(A)。因此,我写了一个小脚本,我将在会话B中运行:

#!/bin/sh

clear

while :
do
screen -S SessionA -X stuff '^C'
screen -S SessionA -X stuff 'java -jar jarFile.jar'
screen -S SessionA -X stuff `echo -ne '\015'`

sleep 30
done

因此它基本上结束了会话A的当前进程,并通过发送java命令和Enter-stroke重新启动它。

使用echo -ne '\015'发送输入笔画在终端中完美运行。但是,它不适用于脚本。

有没有人知道:
如何从脚本或简单地向屏幕会话发送命令 如何从脚本向屏幕会话发送Enter-stroke?

1 个答案:

答案 0 :(得分:0)

我自己找到了答案。 如果有人遇到同样的问题:不要使用echo -ne '\015'而只是在命令的末尾添加^M

新脚本:

#!/bin/sh

clear

while :
do
screen -S SessionA -X stuff '^C'
screen -S SessionA -X stuff 'java -jar jarFile.jar^M'

sleep 30
done