用bash脚本创建screen并向其发送命令
2018-03-05 19:03
941 查看
什么是screen?
GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。 GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。为什么要用脚本创建screen?
为了利用服务器的多个cpu,我们经常需要同时创建多个screen,如果screen的个数非常多,手动创建会非常麻烦。如何用bash脚本创建screen并向其发送命令?
如果我们直接在脚本里写 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 命令即可
注意
这种方式发送的命令不能太长,否则会导致脚本卡住。 如果需要发送一条很长的命令,或者连续发送许多条命令,最好单独写一个脚本,发送一个脚本命令给screen,让screen执行新的脚本。相关文章推荐
- 用bash脚本创建screen并向其发送命令。
- BASH命令和SHELL脚本总结(11)比较两个文件创建时间的先后
- zabbix创建screen脚本,通过bash脚本分析zabbix数据库实现服务器每日故障统计
- Python+selenium创建自动执行命令脚本
- Linux下创建脚本并用命令方式运行
- shell 脚本监控 php进程 screen 发送信号
- linux命令:bash脚本选项使用cat <<EOF使用 getopts选项描述
- secureCRT上telnet自动登陆并周期发送命令的脚本
- 使用脚本发送命令到控制台
- Bash shell脚本打印出正在执行的命令
- bash: 避免命令重复执行的简单脚本
- 使用ctr+c无法终止一个bash脚本,此脚本在循环执行一个需要运行一定时间的命令
- 发送键盘命令生成get set脚本。
- ubuntu10右键脚本中增加发送到命令
- zabbix创建screen脚本
- BASH命令和SHELL脚本总结(4)AWK篇
- bash脚本:输入输出重定向、管道命令
- Python+selenium创建自动执行命令脚本
- 使用bash编写Linux shell脚本--复合命令
- [10月5日的脚本] 用于向新创建邮箱发送欢迎邮件的脚本示例