本篇内容主要讲解“怎么实现自动运行screen任务”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现自动�...
本篇内容主要讲解“怎么实现自动运行screen任务”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现自动运行screen任务”吧!
当有很多任务需要在screen中运行时,可以将创建screen会话的过程自动化,让程序自动在screen中运行。
比如一些需要长时间运行的任务:
当系统异常关机时,这些任务运行的环境将丢失。为了持久化运行环境,可以将每个screen会话中运行的任务写成脚本,方便重复调用。
比如启动测试程序 speedtest 的任务:
$ cd screenjob
$ ls
001_speedtest_rc.sh 001_speedtest.sh
$ cat 001_speedtest.sh
#!/bin/bash
cd /root/apps
PWD=`pwd`
echo "Current working dir: "$PWD
./speedtest_linux_64bit
下一步是自动创建 screen 会话,并在 screen 会话中调用相应的任务:
$ pwd
/root/screenjob
$ cat 001_speedtest_rc.sh
#!/bin/bash
RC_NAME=speedtest
cmd="/bin/bash /root/screenjob/001_speedtest.sh"
SCREEN=/usr/bin/screen
$SCREEN -dmS $RC_NAME
$SCREEN -x -S $RC_NAME -p 0 -X stuff "$cmd"
$SCREEN -x -S $RC_NAME -p 0 -X stuff "\\n"
通过调用 rc 脚本即可自动启动 screen 会话,并调用任务。如果需要开机启动可以将 rc 脚本插入到 /etc/rc.local 中。
在 screen 中运行前台任务,可以观察日志输出,并对任务进行重启操作。相对于后台任务,screen 本身既有后台程序的功能,又可以方便地保留前台程序的优点,实时地看到任务的状态变化。
到此,相信大家对“怎么实现自动运行screen任务”有了更深的了解,不妨来实际操作一番吧!这里是捷杰建站网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!