当前位置: 首页 > Linux

Linux命令后台运行

时间:2023-04-06 21:49:43 Linux

Linux命令后台运行有两种方式:cmd&:后台运行,终端会停止运行nohupcmd&:后台运行,终端不会停止运行方法1:cmd&cmd&实现Commands后台运行。但是不要把需要用户交互的命令放到后台,这样命令会在后台等待用户输入。在后台运行的命令也会将结果输出到控制台,如果不需要,可以将其重定向到文件。使用以下命令将标准输出和错误输出重定向到一个名为cmd.out的文件:cmd>cmd.out2>&1&命令执行成功后,会显示一个进程号,可以用来监控(ps-ef|grepprocessID)或kill(kill-9processID)进程。方法二:nohupcmd&当使用方法一时,当我们关闭终端时,命令会停止运行。添加nohup以在关闭终端后不停止命令。该命令的一般形式为:nohup命令&默认情况下,该命令的所有输出都重定向到nohup.out文件。也可以使用如下命令指定输出文件为nohupcmd.out:nohupcommand>nohupcmd.out2>&1&nohup只有使用exit命令正常退出终端时,该命令才能在后台继续运行。如果终端异常退出,后台命令也会停止运行。其他相关命令:ctrl+z:将前台正在执行的命令放到后台,并保持命令处于挂起状态。jobs:查看当前后台运行了多少命令,-l选项可以显示所有任务的PID。fg:把后台命令放回前台运行。bg:将嵌套命令放在后台运行。fg和bg命令可以使用fg(bg)%jobid来指定执行命令,%jobid是通过jobs命令找到的正在后台执行的命令的序号(不是pid)。