Linux-nohup指令:在系统后台不挂断地运行命令,退出终端不会影响程序的运行

一、nohup指令(所有使用者均可使用)

        nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令退出终端不会影响程序的运行

        nohup 命令,在默认情况下(非重定向时:通俗地讲就是没有指定结果输出到哪个文件),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

二、语法示例

1、nohup基本语法

1)语法格式:
nohup Command [ Arg … ] [ & ]

2)参数说明:
Command:要执行的命令。
Arg:一些参数,可以指定输出文件。
&:让命令在后台执行,终端退出后命令仍旧执行。

2、使用示例(两个例子)

代码:

例1:
#在后台执行当前目录下的test_user_str.sh,终端退出后命令仍旧执行
nohup test_user_str.sh &
#命令运行成功,终端会出现如下显示
appending output to nohup.out

例2:
#在后台执行test_user_str.sh,终端退出后命令仍旧执行,并且将运行结果输出到当前目录的test.log
nohup test_user_str.sh > test.log &

运行结果:

三、停止nohup

1、找到运行的进程

#你需要使用以下命令查找到 nohup 运行脚本的进程 PID(以上面例1为例子)
ps -aux | grep "test_user_str.sh" 

#参数说明:
#     a : 显示所有程序
#     u : 以用户为主的格式来显示
#     x : 显示所有程序,不区分终端机

2、杀死进程

#杀死PID等于11的进程(上面查到pid是多少就杀多少)
kill -11

猜你喜欢

转载自blog.csdn.net/weixin_45440484/article/details/128633759