如果我们直接在脚本里写 screen -S my_screen, 会导致脚本无法继续执行。为了使脚本执行下去,创建screen的具体代码如下:screen_name=$"my_screen"
screen -dmS $screen_name
现在,我们就已经创建了一个名为 my_screen 的窗口。然后,我们需要向其发送具体的命令。我们用如下命令:cmd=$"java Test";
screen -x -S $screen_name -p 0 -X stuff "$cmd"
screen -x -S $screen_name -p 0 -X stuff $'\n'
这样,我们就向screen发送了一条java Test命令了。如果要退出窗口,则再向其发送一条 exit 命令即可
参考:用于免费ngrok#!/bin/bash
screen_name=$"vip-xiaomiqiu-web2"
screen -dmS $screen_name
cmd1=$"cd /home/wangrenai/xiaomiqiu-vip-linux_386";
screen -x -S $screen_name -p 0 -X stuff "$cmd1"
screen -x -S $screen_name -p 0 -X stuff $'\n'
cmd2=$"./ngrok -config=ngrok1.conf start httptun
";
screen -x -S $screen_name -p 0 -X stuff "$cmd2"
screen -x -S $screen_name -p 0 -X stuff $'\n'
注意:这种方式发送的命令不能太长,否则会导致脚本卡住。
如果需要发送一条很长的命令,或者连续发送许多条命令,最好单独写一个脚本,发送一个脚本命令给screen,让screen执行新的脚本。