从shell中删除无限python脚本

从shell中删除无限python脚本,python,linux,bash,shell,Python,Linux,Bash,Shell,嗨,我有5个无限python脚本。我想运行第一个脚本,1小时后杀死第一个脚本,然后运行第二个无限脚本,1小时后杀死第二个脚本。这是我的代码有什么问题?我怎么能?请不要建议我给python脚本时间。我可以做id,但它对我的项目没有用处。只需要从shell中删除无限脚本。多谢各位 这是我的SHELL脚本 这是我的PYTHON脚本 GNUCoreutils附带了一个超时工具 要按顺序运行五个脚本,从infinite1.py到infinite5.py,每个脚本运行一小时: for script in i

嗨,我有5个无限python脚本。我想运行第一个脚本,1小时后杀死第一个脚本,然后运行第二个无限脚本,1小时后杀死第二个脚本。这是我的代码有什么问题?我怎么能?请不要建议我给python脚本时间。我可以做id,但它对我的项目没有用处。只需要从shell中删除无限脚本。多谢各位

这是我的SHELL脚本

这是我的PYTHON脚本


GNUCoreutils附带了一个
超时
工具

要按顺序运行五个脚本,从infinite1.py到infinite5.py,每个脚本运行一小时:

for script in infinite_{1..5}.py
do
   timeout 1h python "$script"
done

此代码将在一小时内在后台运行脚本,然后终止进程

START=$(date '+%s')
python infinite.py &
while true
do
    if [ $(( $(date '+%s') - $START )) -lt 3600 ]; then
        echo "Still running"
    else
        pkill -f 'infinite.py'
        break
    fi
done

$START未在您的代码中指定值。很抱歉,我编辑了START未工作。Haaankk Youuuuuu非常朋友。我为此损失了4-5个小时,为了正确起见,它已修复了答案,但另一个人的答案更好;)请不要建议用户在没有警告的情况下使用
pkill
作为
pkill-python
!你是对的@emily-e,修正了按脚本名杀人。
for script in infinite_{1..5}.py
do
   timeout 1h python "$script"
done
START=$(date '+%s')
python infinite.py &
while true
do
    if [ $(( $(date '+%s') - $START )) -lt 3600 ]; then
        echo "Still running"
    else
        pkill -f 'infinite.py'
        break
    fi
done