有没有更简单的方法在GNU屏幕中发送ENTER键?

时间:2011-01-18 16:57:13

标签: unix gnu-screen

目前我正在使用脚本来生成一个守护进程:

screen -r user -X stuff "spawn daemon"
screen -r user -X eval "stuff \015"

是否有更简单的方法来发送回车键(“\ 015”),或者实际上更好的方法是这样做? (我必须使用屏幕。)

我认为因为我没有附加屏幕,所以我将无法获得“spawn daemon”命令的结果/输出。这是对的吗?

4 个答案:

答案 0 :(得分:14)

我总是这样做:

screen -r user -X stuff "spawn daemon^M"

我在命令行中按ctrl-v,然后按Enter键获取^ M.在bash和vim中,ctrl-v可以用来转义像Enter这样会产生特殊效果的字符。

答案 1 :(得分:4)

关于第二个问题,您可以启用日志记录,并从日志文件中读取。

答案 2 :(得分:2)

此解决方案适用于我的情况:

screen -r user -X stuff "spawn daemon$(printf \\r)"

答案 3 :(得分:1)

发送CR:

echo -e "Some text\015" > /dev/pts/1

发送LF:

echo -e "Some text\012" > /dev/pts/1

将设备路径中的数字替换为实际的屏幕编号。