https://www.jb51.net/article/164240.htm
假如我要执行code目录下的python程序,假设该目录下有1.py,2.py,3.py,4.py四个文件,但是我想执行1.py,2.py,4.py,则可在该目录下创建一个python文件,代码如下:
import os
os.system("python ./1.py")
os.system("python ./2.py")
os.system("python ./4.py")
若想指定输出到某个文件,这里我指定输出到log.txt,log.txt也在code目录下,与你的代码在同一目录
import os
os.system("python ./1.py 1>>log.txt")
os.system("python ./2.py 1>>log.txt")
os.system("python ./4.py 1>>log.txt")
autorun.py
import os
# default lr is 1e-3
os.system("nohup python main.py --dataset agnews --lr 1e-4 > para_log/lr_1e_4_agnews.log 2>&1 &")
os.system("nohup python main.py --dataset agnews --lr 1e-2 > para_log/lr_1e_2_agnews.log 2>&1 &")
os.system("nohup python main.py --dataset agnews --lr 1e-1 > para_log/lr_1e_1_agnews.log 2>&1 &")
虽说是顺序执行命令,但是我执行完上一个nohup就直接下一个了,相当于并不是顺序执行
排列组合有木有,机智如我
nohup python autorun.py > nohup.out 2>&1 &
import os
# os.system("python testHello.py >> penalty_log/abc.log")
# default lr is 1e-3
# os.system("nohup python main.py --dataset agnews --lr 1e-4 > para_log/lr_1e_4_agnews.log 2>&1 &")
os.system("python -u main_test.py --dataset agnews --lr 1e-4 >> para_log/lr_1e_4_agnews.log")
os.system("python -u main_test.py --dataset agnews --lr 1e-2 >> para_log/lr_1e_2_agnews.log")
os.system("python -u main_test.py --dataset agnews --lr 1e-1 >> para_log/lr_1e_1_agnews.log")
耗时很长的程序忘加nohup就运行了怎么办?
https://zhuanlan.zhihu.com/p/110543628
第一步,按ctrl+z
把程序挂起,操作后屏幕会出现如下提示([1]
中的1
表示命令的作业号,后面会用到):
^Z
[1]+ 已停止 rsync -av * ysx@46.93.19.14:/tmp
第二步(可选),用jobs
命令查看下任务状态,跟刚才的屏幕提示一致,程序被暂时终止,作业号还是1
:
ysx@ehbio:~/test/Bigwig$ jobs
[1]+ 已停止 rsync -av * ysx@46.93.19.14:/tmp
第三步,使用bg %1
命令把作业号为1
的任务放入后台,并从停止状态变为运行状态,相当于加了&
后接着运行。再用jobs
查看,任务状态变成了运行中
,这一步很关键。如果没有运行bg %1
则程序处于停止状态,一直不会运行,吃几顿饭都不会运行。
ysx@ehbio:~/test/Bigwig$ bg %1
[1]+ rsync -av * ysx@46.93.19.14:/tmp &
ysx@ehbio:~/test/Bigwig$ jobs
[1]+ 运行中 rsync -av * ysx@46.93.19.14:/tmp &
第四步,运行disown -h %1
,表示在终端关闭时不对作业号为1
的程序发送终止信号,外部因素将不影响程序的运行。通过ps
命令查看下任务进程 (可选)。
ysx@ehbio:~/test/Bigwig$ disown -h %1
ysx@ehbio:~/test/Bigwig$ ps -auwx | grep 'rsync'
ysx 18214 0.0 0.0 117844 1720 ? S 09:43 0:01 rsync -av *.bw ysx@46.93.19.14:/tmp
ysx 18215 0.1 0.0 182376 8360 ? S 09:43 0:04 ssh -l ysx 46.93.19.14 rsync --server -vlogDtpre.iLsfxC . /tmp
ysx 18340 0.0 0.0 112724 984 pts/1 S+ 10:17 0:00 grep --color=auto rsync