在Screen/Tmux中运行脚本
在工作中,经常要在screen里面跑环境,所有在这里就介绍下怎样在screen里面运行脚本,思路:创建一个挂起的screen----->往挂起的screen里面发送指令,命令如下:
1 2 |
screen -L -md test1 screen -S test1 -p0 -X stuff "$(printf '%b' 'date\015')" ---------------\015在screen是Enter的意思,具体参数解释可man screen |
那么问题来了,能否在tmux中实现相同的功能?答案是可以的,按照同样的思路即可完成
1 2 |
tmux new -d -s test1 tmux run-shell -t test1 'date' |
两者运行脚本方法对比:
screen
优点:自带日志生成功能,方便排错
缺点:执行命令的参数选项繁琐、难以理解
tmux
优点:执行命令的参数简便、灵活、通俗易懂
缺点:不能把会话中的任务运行过程生成日志文件,而且是一个临时的pane