Linux简单命令行:文件/目录,sudo,包管理

命令行学习笔记:进程相关命令

2016-12-11  本文已影响39人  z嘉嘉嘉

学习内容

程相关: ps, kill

个人总结

进程描述

** 进程** :当我们运行程序时,Linux 会为程序创建一个特殊的环境,该环境包含程序运行需要的所有资源,以保证程序能够独立运行,不受其他程序干扰。这个特殊的环境就是进程。

举例:每个 Linux 命令都与系统中的程序对应,输入命令,Linux就会创建UI个进程。简单的说,进程就是程序实例。Linux 系统通过一个五位数字跟踪程序的运行状态,这个数字称为 PID(程序状态字),用来记录当前系统的运行状态

相关命令

➜  ~ ps
  PID TTY          TIME CMD
20348 pts/23   00:00:00 zsh
20741 pts/23   00:00:00 ps

➜  ~ ps -f
UID        PID  PPID  C STIME TTY          TIME CMD
zhyingj+ 20348  4905  0 21:47 pts/23   00:00:00 zsh
zhyingj+ 20751 20348  0 21:50 pts/23   00:00:00 ps -f

字段说明:

UID  进程所属用户的ID,即哪个用户创建了该进程。
PID  进程ID。
PPID    父进程ID,创建该进程的进程称为父进程。
C      CPU使用率。
STIME   进程被创建的时间。
TTY  与进程有关的终端类型。
TIME    进程所使用的CPU时间。
CMD     创建该进程的命令。
➜  ~ kill -l
HUP INT QUIT ILL TRAP ABRT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH POLL PWR SYS

信号说明
只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略。 下面是常用的信号:

HUP    1    终端断线
INT     2    中断(同 Ctrl + C)
QUIT    3    退出(同 Ctrl + \)
TERM   15    终止
KILL    9    强制终止
CONT   18    继续(与STOP相反, fg/bg命令)
STOP    19    暂停(同 Ctrl + Z)

使用
1.列出所有信号 kill -l

➜  ~ kill -l
HUP INT QUIT ILL TRAP ABRT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH POLL PWR SYS

2.得到指定信号数值

➜  ~ kill -l kill
9
➜  ~ kill -l INT
2

3.先用 ps 查找进程,然后 kill 掉

➜  ~ ps -ef|grep vim
zhyingj+ 23111 22309  0 22:34 pts/26   00:00:00 vim text.txt
zhyingj+ 23501 23112  0 22:36 pts/27   00:00:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn vim
➜  ~ kill 23111    //杀死
➜  ~ kill 23111
kill: kill 23111 failed: no such process

4.强制杀死指定进程kill -9 PID

➜  ~ ps -ef|grep vim
zhyingj+ 23556 22309  0 22:39 pts/26   00:00:00 vim text.txt
zhyingj+ 23560 23112  0 22:39 pts/27   00:00:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn vim
➜  ~ kill -9 23556
➜  ~ kill -9 23556
kill: kill 23556 failed: no such process

5.杀死指定用户所有进程

命令:
kill -9 $(ps -ef | grep peidalinux)
kill -u peidalinux

参考

每天一个 Linux 命令(42) : kill
Linux 进程管理相关内容

上一篇下一篇

猜你喜欢

热点阅读