用wordpress制作网站模板,wordpress 发视频,银川网站怎么做seo,如何做电影网站挣钱目录 1 ps命令1.1 简介1.2 说明1、选项#xff1a;2、输出格式控制#xff1a;3、输出修饰符#xff1a;4、显示线程#xff1a;5、进程状态码#xff1a;6、AIX 格式描述符7、标准格式指定符 1.3 实例1、默认输出2、使用标准语法查看系统上的每个进程3、使用BSD语法查看系… 目录 1 ps命令1.1 简介1.2 说明1、选项2、输出格式控制3、输出修饰符4、显示线程5、进程状态码6、AIX 格式描述符7、标准格式指定符 1.3 实例1、默认输出2、使用标准语法查看系统上的每个进程3、使用BSD语法查看系统上的每个进程4、输出进程树5、获取线程信息7、获取安全信息8、以root(真实有效的ID)身份查看每个进程运行9、以定义的格式查看每个进程10、只打印syslogd的进程id11、只打印PID为10的命令名称 总结 1 ps命令
1.1 简介
ps 命令是 Linux 和其他类 Unix 系统中用于查看当前运行的进程的强大工具。ps 代表 “process status”。 ps 用于显示当前活动进程信息的命令行工具。如果想要周期性更新所选进程及其显示的信息时可以使用 top 命令代替。 这个版本的 ps 命令接受几种不同类型的选项
1.UNIX 选项这些选项可以分组并且必须以前缀短横线 - 开头。2.BSD 选项这些选项也可以分组但不需要使用短横线 -。3.GNU 长选项这些选项以两个短横线 – 开头。
不同类型的选项可以自由混合使用但可能会出现冲突。由于 ps 命令需要与许多标准和实现兼容因此存在一些功能相同但名称不同的同义词选项。
请注意ps -aux 和 ps aux 是不同的。POSIX 和 UNIX 标准要求 ps -aux 显示名为 x 的用户拥有的所有进程以及由 -a 选项选择的所有进程。如果名为 x 的用户不存在这个 ps 版本可能会将其解释为 ps aux 并发出警告。这种行为旨在帮助过渡旧脚本和习惯但它很脆弱可能会发生变化因此不应依赖它。
默认情况下ps 选择与当前用户具有相同有效用户 IDeuidEUID并且与调用者关联到同一终端的所有进程。它显示进程 IDpidPID、与进程关联的终端tnameTTY、以 [DD-]hh:mm:ss 格式表示的累计 CPU 时间timeTIME以及可执行文件名ucmdCMD。默认情况下输出不排序。
ps命令通过读取/proc目录中的虚拟文件来工作
1.2 说明
使用ps [options]
1、选项
a显示所有终端的进程包括其他用户的进程-A选择所有进程同-e选项-a选择所有进程除了会话领导者参见 getsid(2)以及未与终端关联的进程。-d选择所有进程除了会话领导者–deselect选择所有进程除了那些满足指定条件的进程否定选择。与 -N 相同。-e选择所有进程同 -A-N选择所有进程除了那些满足指定条件的进程否定选择。与 --deselect 相同T选择与此终端关联的所有进程r只选择正在运行的进程x显示没有控制终端的进程-C等同于 C根据命令名筛选进程-G grplist根据真实组IDRGID或名称选择。-g grplist根据会话或通过有效组名选择。组ID号仅在同时指定了一些组名时才会起作用。–Group grplist根据真实组IDRGID或名称选择。与-G相同。–group grplist根据有效组IDEGID或名称选择。-g选项通常是–group的替代选项。p pidlist按进程ID选择。与-p和–pid相同。-p pidlist按PID选择。这会选择进程ID号出现在pidlist中的进程。与p和–pid相同。–pid pidlist按进程ID选择。与-p和p相同。–ppid pidlist按父进程ID选择。–quick-pid pidlist按进程ID选择同 -q 和 q-s sesslist按会话id选择同 --sidt ttylist按终端选择同 -t 和 --tU userlist按有效用户名称或用户IDEUID选择同 -u–user-U userlist按真实用户IDRID或者名称选择。同 -U --User
2、输出格式控制
-c同-l显示不同调度器的信息–context显示安全上下文格式用于SELinux-f打印完整格式列表-F额外完整格式–format format用户自定义同 -o ojBSD作业控制格式-j作业格式l显示BSD长格式-l长格式-M添加一列安全数据同Zo format指定用户自定义格式。与-o和–format相同。O format该选项预加载了o重载。BSD的O选项可以像-O一样工作用户自定义输出格式其中一些常用字段已预定义或者可以用来指定排序顺序。程序会采用启发式方法来确定这个选项的行为。为了确保获得期望的行为排序或格式化请以其他方式指定该选项例如使用-O或–sort。当用作格式化选项时它与-O相同具有BSD的特性。-O format类似于-o但预加载了一些默认列。与-o pid,format,state,tname,time,command或-o pid,format,tname,time,cmd相同s显示信号格式u显示面向用户的格式v显示虚拟内存格式-y不显示标志只能与 -l 选项同时使用 进程标志 1 表示进程已经fork创建子进程但尚未执行exec加载新程序。4 表示进程使用了超级用户权限。
3、输出修饰符
c 显示真实的命令名–cumulative包含一些已终止子进程的数据作为父进程的总和。-e在命令之后显示环境变量-f以ASCII艺术形式显示进程层次结构树状图-h不显示标题-H显示进程层次结构树状图。–headers重复标题行每页输出一个标题。k spec指定排序顺序。排序语法是 [|-]key[,[|-]key[,…]]。从“标准格式说明符”部分中选择一个多字母的键。加号是可选的因为默认方向是递增的数值或字典顺序。这与 --sort 相同。–no-headers所有标题行都不显示
4、显示线程
H 将线程视为进程进行显示-L 显示线程可能包含LWP轻量级进程和NLWP列。m 在进程之后显示线程。-m 在进程之后显示线程。-T 显示线程可能包含SPID列线程ID。
5、进程状态码
T 表示进程被作业控制信号停止。t 表示进程在跟踪过程中被调试器停止。W 表示分页从2.6.xx内核开始不再有效。X 表示进程已死不应该看到。Z 表示已终止但未被其父进程回收的僵尸进程。对于BSD格式以及使用stat关键字时可能会显示额外的字符 表示高优先级对其他用户不友好。N 表示低优先级对其他用户友好。L 表示有页面被锁定在内存中用于实时和自定义IO。s 表示是会话领导者。l 表示是多线程的使用CLONE_THREAD如NPTL pthreads那样
6、AIX 格式描述符
AIX 格式描述符ps命令支持AIX格式描述符。例如可以使用以下命令生成正常的默认输出ps -eo “%p %y %x %c”
%C pcpu %CPU%G group GROUP%P ppid PPID%U user USER%a args COMMAND%c comm COMMAND%g rgroup RGROUP%n nice NI%p pid PID%r pgid PGID%t etime ELAPSED%u ruser RUSER%x time TIME%y tty TTY%z vsz VSZ
7、标准格式指定符
标准格式指定符可以用来控制输出格式例如通过选项-o或按照GNU风格的–sort选项对所选进程进行排序的不同关键字。也可以理解为输出的标题行。例如ps -eo pid,user,args --sort user。
%cpu %CPU进程使用的CPU时间除以进程运行的时间CPU时间/实际时间比率以百分比表示。除非恰巧所有进程都正好使用了它们的CPU时间否则它们的总和将不会达到100%。别名pcpu。 CPU利用率则反映了进程在CPU上执行的时间占比是评估进程性能的重要指标之一。 %mem %MEM表示进程的驻留集大小RSS与机器上物理内存的比率以百分比表示。别名pmem 这里的驻留集大小Resident Set SizeRSS是指进程当前在物理内存中占用的空间大小不包括交换出去的部分。这个指标可以用来评估进程对物理内存的占用情况 args COMMAND显示的是进程及其所有参数组成的字符串。这个字符串可能包含对参数的修改。这一列的输出中可能包含空格。被标记为的进程是部分死亡的正在等待其父进程来完全销毁它bsdstart START命令开始执行的时间。如果进程在24小时内启动输出格式为“HH:MM”否则格式为“Mmm:SS”其中Mmm为月份的三个字母缩写start_time START进程开始的时间或日期stime STIMEstime别名start_time参考上面即可bsdtime TIME累积的CPU时间包括用户时间和系统时间。显示格式通常为“MMM:SS”但如果进程使用的CPU时间超过999分钟则显示会向右偏移。c C处理器利用率。目前这是进程在其生命周期内的使用百分比的整数值。与%cpu类似但显示格式和计算方式可能有所不同comm COMMAND命令名command name列仅显示可执行文件的名称。对命令名所做的修改不会在这一列中显示。euid EUID有效用户id别名 uideuser EUSER有效用户名exe EXE执行程序的路径。f F进程tagni NI / nice NI 进程的动态优先级也称为“nice值”的调整。与 PRI 相同NI 值越低进程的优先级越高。不过NI 是一个相对值它是基于系统默认优先级通常是 0的调整。例如如果一个进程的 NI 值是 5那么它比默认优先级的进程获得更少的 CPU 时间。可以通过 renice 命令来调整进程的 NI 值nwchan WCHAN内核函数地址列显示的是进程正在休眠的内核函数的地址pid PID进程IDpgid PGID进程组IDppid PPID父进程IDpri PRI进程的静态优先级也称为“nice值”。这个值决定了进程在系统中的重要性影响着操作系统分配给进程的 CPU 时间量。PRI 的值越低表示进程的优先级越高它将获得更多的 CPU 时间。通常PRI 值的范围是从 -20最高优先级到 19最低优先级其中 0 是默认值。rgid RGID真实组IDrgroup RGROUP真实组名rss RSSRSSResident Set Size常驻内存集是Linux中用来表示进程实际使用的物理内存大小的一个指标单位是千字节KB。它包括了进程代码、数据、堆栈以及共享库等所有实际加载到RAM中的内存内容。ruid RUID真实用户IDruser RUSER真实用户名sess SESSsession ID同SIDtpgid TPGID进程所连接的终端tty上的前台进程组的ID或者如果进程没有连接到tty则为-1。s S进程状态以下是常见的状态R (Running or Runnable): 进程正在运行或在运行队列中等待运行。这并不意味着进程一定在执行代码它也可能在等待某些资源变得可用。S (Sleeping): 进程处于休眠状态等待某个条件或事件满足。这是一个可中断的睡眠状态当等待的事件发生时进程可以被唤醒。D (Disk Sleep): 进程处于不可中断的磁盘睡眠状态通常是因为它正在进行I/O操作如读写磁盘。在这种状态下进程不能被其他信号或中断唤醒。T (Stopped): 进程已被停止。这通常是因为它收到了如SIGSTOP这样的信号。Z (Zombie): 进程已终止但其父进程尚未读取其退出状态。这样的进程被称为僵尸进程它不再执行任何代码但其在进程表中的条目仍然存在。stat STAT进程状态tname TTY控制终端vsz VSZ进程使用的虚拟内存默认是KBsz SZ进程的核心镜像在物理内存也的大小包括文本、数据和栈空间psr PSR进程当前所属的处理器wchan WCHAN进程正在睡眠的内核函数名称如果是正在运行的进程则显示为“-”或者如果进程是多线程的且 ps 命令没有显示线程信息则显示为“*”pending PENDING待处理信号的掩码blocked BLOCKED阻塞信号的掩码ignored IGNORED忽略信号的掩码caught CAUGHT捕获信号的掩码lwp LWP轻量级进程线程IDnlwp NLWP进程中的轻量级进程线程数量。label LABEL安全标签通常用于SELinux上下文数据
1.3 实例
1、默认输出
rootcon02:~# psPID TTY TIME CMD7352 pts/3 00:00:00 sudo7353 pts/3 00:00:00 bash8866 pts/3 00:00:00 tail22376 pts/3 00:00:00 ps## 输出所有用户的进程
rootcon02:~# ps aPID TTY STAT TIME COMMAND944 tty1 Ss 0:00 /sbin/agetty -o -p -- \u --noclear tty1 linux7312 pts/2 Ss 0:00 -bash7351 pts/2 S 0:00 sudo -i7352 pts/3 Ss 0:00 sudo -i7353 pts/3 S 0:00 -bash8866 pts/3 T 0:00 tail -fn99 /var/log/syslog22377 pts/3 R 0:00 ps a
###### 参数解释
PID进程ID
TTY使用终端
STAT进程状态
TIME进程实际使用CPU的时间
COMMAND启动进程的命令行2、使用标准语法查看系统上的每个进程
ps -e
#####
PID TTY TIME CMD1 ? 00:00:29 systemdps -ef
######
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Mar19 ? 00:00:29 /sbin/init
### 参数解释
UID用户ID
PID进程ID
PPID父进程ID
C处理器利用率与%CPU类似
STIME进程开始时间
TTY终端
TIME进程实际使用CPU的时间
CMD启动进程的命令名称或命令行ps -eF
#######
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 1 0 0 41960 10644 0 Mar19 ? 00:00:29 /sbin/init
root 2 0 0 0 0 0 Mar19 ? 00:00:00 [kthreadd]
#### 参数解释
SZ进程的核心镜像在物理内存页的大小
RSS进程实际使用的物理内存大小
PSR进程当前所属的处理器ps -ely
#######
S UID PID PPID C PRI NI RSS SZ WCHAN TTY TIME CMD
S 0 1 0 0 80 0 10644 41960 ep_pol ? 00:00:29 systemd
S 0 2 0 0 80 0 0 0 kthrea ? 00:00:00 kthreadd
I 0 3 2 0 60 -20 0 0 rescue ? 00:00:00 rcu_gp
##### 参数解释
S进程状态
PRI进程静态优先级是进程的初始优先级通常在创建进程时设置
NI进程动态优先级是进程当前的优先级调整值它是基于 PRI 的相对值
SZ进程的核心镜像在物理内存页的大小
WCHAN进程正在睡眠的内核函数名称如果是正在运行的进程则显示为“-”或者如果进程是多线程的且 ps 命令没有显示线程信息则显示为“*”3、使用BSD语法查看系统上的每个进程
ps ax
#######PID TTY STAT TIME COMMAND1 ? Ss 0:29 /sbin/init2 ? S 0:00 [kthreadd]ps axu
#####
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 167840 10644 ? Ss Mar19 0:29 /sbin/init
####参数解释
VSZ进程使用的虚拟内存
RSS进程实际使用的物理内存大小
START进程开始的时间或日期4、输出进程树
ps -ejH
######PID PGID SID TTY TIME CMD2 0 0 ? 00:00:00 kthreadd3 0 0 ? 00:00:00 rcu_gp4 0 0 ? 00:00:00 rcu_par_gpps axjf
#######PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND0 2 0 0 ? -1 S 0 0:00 [kthreadd]2 3 0 0 ? -1 I 0 0:00 \_ [rcu_gp]2 4 0 0 ? -1 I 0 0:00 \_ [rcu_par_gp]
###参数解释
PGID进程组ID
SIDsession ID
TPGID进程所连接的终端tty上的前台进程组的ID5、获取线程信息
ps -eLf
######
UID PID PPID LWP C NLWP STIME TTY TIME CMD
root 1 0 1 0 1 Mar19 ? 00:00:29 /sbin/init
root 2 0 2 0 1 Mar19 ? 00:00:00 [kthreadd]
## 参数解释
LWP轻量级进程线程ID
NLWP进程中的轻量级进程线程数量ps axms
#######UID PID PENDING BLOCKED IGNORED CAUGHT STAT TTY TIME COMMAND0 1 0000000000000000 - - - - ? 0:29 /sbin/init
## 参数解释
PENDING待处理信号的掩码
BLOCKED阻塞信号的掩码
IGNORED忽略信号的掩码
CAUGHT捕获信号的掩码7、获取安全信息
ps -eo euser,ruser,suser,fuser,f,comm,label
######
EUSER RUSER SUSER FUSER F COMMAND LABEL
root root root root 4 systemd unconfined
root root root root 1 kthreadd unconfinedps axZ
########
LABEL PID TTY STAT TIME COMMAND
unconfined 1 ? Ss 0:29 /sbin/init
unconfined 2 ? S 0:00 [kthreadd]
unconfined 3 ? I 0:00 [rcu_gp]
## 参数解释
LABEL安全标签通常用于SELinux上下文数据ps -eM
######
LABEL PID TTY TIME CMD
unconfined 1 ? 00:00:29 systemd
unconfined 2 ? 00:00:00 kthreadd8、以root(真实有效的ID)身份查看每个进程运行
ps -U root -u root u
#######
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 167840 10644 ? Ss Mar19 0:29 /sbin/init
root 2 0.0 0.0 0 0 ? S Mar19 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? I Mar19 0:00 [rcu_gp]9、以定义的格式查看每个进程
即可以只查看自己想要的字段
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan10、只打印syslogd的进程id ps -C syslogd -o pid11、只打印PID为10的命令名称
ps -q 10 -o comm
mm_percpu_wq总结
ps的用法灵活最常用的参数组合如下也可以根据实际情况自己组合
ps -ef
ps aux