在另一个脚本结束后运行python脚本

在另一个脚本结束后运行python脚本,python,bash,Python,Bash,我有一个python脚本正在运行,这将需要很长时间。我想在第一次完成后立即运行另一个脚本。让bash程序按顺序运行脚本是没有用的,因为第一个脚本已经在运行 我曾考虑过使用os.nice()来降低第二个的优先级,但这似乎非常不够 在已经运行的Python脚本完成后,如何运行一些Python脚本? PS正在运行的脚本正在屏幕上运行,并且可能有多个屏幕打开。您可以从第二个脚本导入代码,然后在第一个脚本结束时运行它。我想到的第一件事是在shell脚本中运行这两个Python程序,因此第二个脚本在第一个脚

我有一个python脚本正在运行,这将需要很长时间。我想在第一次完成后立即运行另一个脚本。让bash程序按顺序运行脚本是没有用的,因为第一个脚本已经在运行

我曾考虑过使用
os.nice()
来降低第二个的优先级,但这似乎非常不够

在已经运行的Python脚本完成后,如何运行一些Python脚本?
PS正在运行的脚本正在
屏幕上运行,并且可能有多个
屏幕打开。

您可以从第二个脚本导入代码,然后在第一个脚本结束时运行它。

我想到的第一件事是在shell脚本中运行这两个Python程序,因此第二个脚本在第一个脚本结束时启动:

    #!/bin/bash
    python -m script1.py
    python -m script2.py
如果第一个脚本已经在运行,或者在您的控制之外启动,您可以在循环中使用ps命令来检测它何时完成,然后启动第二个脚本,即第二个脚本:

#!/bin/bash
while [ 1 ]
do
     cnt=`ps x | grep -v grep | grep -c script1.py`
     if  [[ "$cnt" -eq 0 ]]
     then
        break
     fi
     sleep 1
done
echo "Starting second program"
python -m script2.py
提示:使用这种方法时,请记住在grep查找所需进程之前使用
grep-v grep
,否则您的grep命令将在结果中自动计数


(请温柔一点;这是我第一次尝试回答这里的问题。)

我不能这样做,因为第一个脚本已经在运行了