wordpress建站优化,网站建设维护相关人员培训,连云港做网站设计,开源网站建设在 UNIX 和类 UNIX 操作系统#xff08;如 Linux 和 macOS#xff09;中#xff0c;nohup 意图为后台运行且免疫挂断信号的命令#xff0c;用于在用户注销#xff08;logout#xff09;或终端关闭后继续运行相应的进程。
基本语法
启动进程
nohup [COMMAND] [ARG...] …在 UNIX 和类 UNIX 操作系统如 Linux 和 macOS中nohup 意图为后台运行且免疫挂断信号的命令用于在用户注销logout或终端关闭后继续运行相应的进程。
基本语法
启动进程
nohup [COMMAND] [ARG...] COMMAND 是你想要在后台运行的命令。[ARG...] 是传递给该命令的参数如果有的话。 符号将命令置于后台执行。
结束进程
获取进程的pid
ps aux | grep train.sh
或
ps -ef | grep python然后用以下命令杀死对应的进程
kill -9 pid示例
简单示例
假设你想要在后台运行一个 Python 脚本 myscript.py即使你关闭了终端或注销了账户该脚本也会继续运行。
nohup python3 myscript.py 重定向输出
你可以通过重定向操作符来自定义输出文件。
nohup python3 myscript.py myoutput.log 21 这会将标准输出重定向到 myoutput.log 文件并将标准错误也重定向到同一个文件。
指定目录
使用 -d 选项可以指定输出文件的目录。
nohup -d /path/to/directory python3 myscript.py 这会将输出文件默认为 nohup.out保存到指定的目录中。
linux中的21是什么意思
该命令中的数字解释如下
0 – stdin (standard input标准输入)1 – stdout (standard output标准输出2 – stderr (standard error标准错误输出
在Linux中21是一种重定向操作用于处理命令的输出。这里2代表标准错误stderr而1代表标准输出stdout。因此21的意思是将标准错误stderr文件描述符为2重定向到标准输出stdout文件描述符为1所指向的地方。
1、默认情况下
标准输出stdout会打印到终端或文件如果使用了重定向。标准错误stderr也会打印到终端但不会被重定向影响。
2、使用 重定向标准输出
ls non_existent_file output.txt这个命令会尝试列出non_existent_file但因为该文件不存在所以会产生一个错误消息。这个错误消息stderr会打印到终端而标准输出如果有的话会被重定向到output.txt文件中。
3、使用 21 重定向标准错误
ls non_existent_file output.txt 21这次标准输出和标准错误都会被重定向到output.txt文件中。重定向了标准输出到output.txt而21将标准错误重定向到标准输出当前所指向的地方在这个例子中是output.txt。
4、另一种写法
ls non_existent_file output.txt这是Bash 4.0及以上版本支持的一种简写方式它的效果与ls non_existent_file output.txt 21相同即将标准输出和标准错误都重定向到output.txt。
效果和3一样