Linux 进程前后台切换|管理

文章目录

    • 进程常用操作:
    • jobs 命令语法:
    • jobs 命令实例:

进程常用操作:

command &   //将进程放在后台执行
ctrl-z      //暂停当前进程 并放入后台
jobs        //查看当前后台任务
bg          //将任务转为后台执行
fg          //将任务调回前台
kill        //杀掉任务
  1. command & 在运行的命令后加一个&号,就会后台运行命令
  2. ctrl-z 在终端中按ctrl-z 会将当前任务暂停并转入后台; 利用jobs命令可以查看当前后台的任务; 如果在jobs命令后增加 -l 参数 那么就会显示详细信息
  3. 终止的进程状态为Stopped 通过bg %i (i为进程的标号)命令可以将其转为运行
  4. 想要将任务切换回前台,可以利用fg %i命令
  5. 想要结束任务,可以利用kill %i命令

jobs 命令语法:

#jobs(选项)(参数)
jobs: usage: jobs [-lnprs] [jobspec ...] or jobs -x command [args]

jobs 命令选项:

-l:显示进程号;
-p:仅任务对应的显示进程号;
-n:显示任务状态的变化;
-r:仅输出运行状态(running)的任务;
-s:仅输出停止状态(stoped)的任务。

obs命令 用于显示Linux中的任务列表及任务状态,包括后台运行的任务。该命令可以显示任务号及其对应的进程号。其中,任务号是以普通用户的角度进行的,而进程号则是从系统管理员的角度来看的。一个任务可以对应于一个或者多个进程号。

在Linux系统中执行某些操作时候,有时需要将当前任务暂停调至后台,或有时须将后台暂停的任务重启开启并调至前台,这一序列的操作将会使用到 jobs、bg、和 fg 三个命令以及两个快捷键来完成。

jobs 命令实例:

使用jobs命令显示当前系统的任务列表,输入如下命令:

jobs -l     #显示当前系统的任务列表

上面的命令执行后,将显示出当前系统下的任务列表信息,具体如下所示:

[1] + 1903 运行中          find / -name password &

注意:要得到以上输出信息,必须在执行jobs命令之前执行命令find / -name password &。否则,执行jobs命令不会显示任何信息(参见 Linux nohup 命令)。

其中,输出信息的第一列表示任务编号,第二列表示任务所对应的进程号,第三列表示任务的运行状态,第四列表示启动任务的命令。

jobs 命令的坑:
直接输入jobs命令,是不会显示PID进程号的,无法KILL掉。如果需要KILL,则需要用 jobs -l,得到PID。

现在开始杀掉它:输入命令:

kill -9 1903 #1903是上述jobs例子下的PID

再用jobs命令查看,确认已经杀掉了:终端没有显示,表示Ok!

参考文章:
https://segmentfault.com/a/1190000000349722
https://blog.csdn.net/YuZhiHui_No1/article/details/44564963
https://commandnotfound.cn/linux/1/4/jobs-%25252525E5%2525252591%25252525BD%25252525E4%25252525BB%25252525A4

你可能感兴趣的:(ubuntu)