您好,我正在尝试将 screen 用作 cronjob 的一部分。
目前我有以下命令:
screen -fa -d -m -S mapper /home/user/cron
如果 screen 映射器已经存在,我是否可以让这个命令不执行任何操作?映射器设置为半小时的 cronjob,但有时映射需要半个多小时才能完成,因此它们重叠,彼此减慢速度,有时甚至导致下一个速度变慢,所以我最终得到许多映射器 screen 正在运行。
谢谢你的时间,
最佳答案
ls /var/run/screen/S-"$USER"/*.mapper >/dev/null 2>&1 || screen -S mapper ...
这将检查当前用户是否存在任何名为 mapper 的 screen session ,只有在没有存在的情况下,才会启动新 session 。
关于bash - Cronjob 的 screen Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6641886/