1. 后台运行代码命令
- nohup python -u ***.py >***.log 2>&1 &
复制代码- #生成后台任务[jobnum] PID
- [1] 25282
复制代码 nohup 加在命令的最前面,表示不挂断的运行命令
-u 不缓存,立即加载终端数据
.log 终端输出的数据,不添加将自动生成nohup.out文件
2>&1 将错误内容重定向输入到规范输出中去
& 加载命令的最后面,表示这个命令放在后台执行
2. 查看后台命令
jobs 查看当前终端后台执行的任务
ps 查看瞬时进程的动态,可以看到别的终端的任务
3. 完毕后台任务
kill
(1)通过jobs命令查看jobnum,然后执行 kill %jobnum
假设没有退出客户端界面,可以先通过 "jobs"命令查看程序是否在运行,此时只要序号没有PID号;
输入命令 "jobs -l" 会显示程序的PID号,然后通过"kill -9 PID"杀死程序;
输入命令 “jobs” 查看程序是否被杀死。
(2)通过ps命令查看进程号PID,然后执行 kill %PID
假设退出过客户端界面,输入 "jobs"命令查不到正在运行的程序;
输入 "ps ux"来查看所有程序的进程号PID,然后再通过 "kill -9 PID"杀死程序;
输入 "ps ux"来查看程序是否被杀死。
假设是前台进程的话,直接执行 Ctrl+c 就可以终止了
4. 前、后台任务切换
fg
将后台中的命令调至前台继续运行
假设后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。
Ctrl + z
将一个正在前台执行的命令放到后台,并且处于暂停状态
bg
将一个在后台暂停的命令,变成在后台继续执行
假设后台中有多个命令,可以先用jobs查看jobnum,然后用 bg %jobnum 将选中的命令调出继续执行。
5. nohup.out维护
nohup.out会不时增加内容,因而就有了不停止效劳直接,清空nohup.out文件的方法。
两个可以不用停止WEB效劳就可以清空nohup.out的命令。
第一种:第二种:- cat /dev/null > nohup.out
复制代码 6. 报错
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found
程序的编译器的版本是比较低,缺少GLIBCXX_3.4.22
(1)查找包含 libstdc++.so 的文件- find / -name "libstdc++.so*"
复制代码 (2)查看其中高版本是否含有GLIBCXX_3.4.22- strings /opt/conda/lib/libstdc++.so.6.0.29 | grep GLIBCXX
复制代码 (3)cd 到 /opt/conda/lib/文件夹中
(4)将高版本文件复制目的文件夹中- cp libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/
- #挪动使用mv命令
- mv libstdc++.so.6.0.29 /usr/lib/x86_64-linux-gnu/
复制代码 (5)重新建立软连接- cd /usr/lib/x86_64-linux-gnu/
- rm libstdc++.so.6 #删除
- ln libstdc++.so.6.0.29 libstdc++.so.6 #软连接
复制代码 |
|