每天一命令之Ps
跳到导航
跳到搜索
ps
NAME and DESCRIPTION
ps - report a snapshot of the current processes. ps displays information about a selection of the active processes.
Process Status ?
OPTIONS
a 显示所有进程 all w/ tty, including other users -a 显示同一终端下的所有程序 all w/ tty except session leaders -A 显示所有进程 all processes c 显示进程的真实名称 -N 反向选择 -e 等于“-A” -f:显示UID,PPIP,C与STIME栏位。 e 显示环境变量 f 显示程序间的关系 -H 显示树状结构 r 显示当前终端的进程 T 显示当前终端的所有程序 u 指定用户的所有进程 -au 显示较详细的资讯 u:以用户为主的格式来显示程序状况。 -aux 显示所有包含其他使用者的行程 -C<命令> 列出指定命令的状况 --lines<行数> 每页显示的行数 --width<字符数> 每页显示的字符数 -l或l:采用详细的格式来显示程序状况。 -y:配合选项"-l"使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位。 Do not show flags; show rss in place of addr. This option can only be used with -l. -C by command name <指令名称>:指定执行指令的名称,并列出该指令的程序的状况 -o 用户自定义格式。 Specify user-defined format. Identical to -o and --format -o format User-defined format. format is a single argument in the form of a blank-separated or comma-separated list, which offers a way to specify individual output columns. The recognized keywords are described in the STANDARD FORMAT SPECIFIERS section below. Headers may be renamed (ps -o pid,ruser=RealUser -o comm=Command) as desired. If all column headers are empty (ps -o pid= -o comm=) then the header line will not be output. Column width will increase as needed for wide headers; this may be used to widen up columns such as WCHAN (ps -o pid,wchan=WIDE-WCHAN-COLUMN -o comm). Explicit width control (ps opid,wchan:42,cmd) is offered too. The behavior of ps -o pid=X, comm=Y varies with personality; output may be one column named "X,comm=Y" or two columns named "X" and "Y". Use multiple -o options when in doubt. Use the PS_FORMAT environment variable to specify a default as desired; DefSysV and DefBSD are macros that may be used to choose the default UNIX or BSD columns.
EXAMPLES
ps找出消耗内存的元凶 找出最占用内存的进程 ps -A --sort -rss -o comm,pmem,pcpu |uniq -c | head -10 1 COMMAND %MEM %CPU 1 java 1.5 4.9 1 java 1.3 0.2 8 nginx 0.1 0.8 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head 查看每个FPM的内存占用:#RSS段为内存 ps -ylC php-fpm --sort:rss S UID PID PPID C PRI NI RSS SZ WCHAN TTY TIME CMD S 0 21556 1 0 80 0 8388 75039 ep_pol ? 00:01:16 php-fpm S 498 6349 21556 0 80 0 11728 811119 inet_c ? 00:01:46 php-fpm S 498 21564 21556 0 80 0 14940 2053445 inet_c ? 00:04:42 php-fpm S 498 21693 21556 0 80 0 14944 2054981 inet_c ? 00:04:44 php-fpm S 498 21735 21556 0 80 0 14944 2054789 inet_c ? 00:04:45 php-fpm ps命令常用用法(方便查看系统进程) 1)ps a 显示现行终端机下的所有程序,包括其他用户的程序。 2)ps -A 显示所有进程。 3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 4)ps -e 此参数的效果和指定"A"参数相同。 5)ps e 列出程序时,显示每个程序所使用的环境变量。 6)ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 7)ps -H 显示树状结构,表示程序间的相互关系。 8)ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 9)ps s 采用程序信号的格式显示程序状况。 10)ps S 列出程序时,包括已中断的子程序资料。 11)ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。 12)ps u 以用户为主的格式来显示程序状况。 13)ps x 显示所有程序,不以终端机来区分。 最常用的方法是ps -aux,然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。
运行时间查看
ps -eo pid,lstart,etime,cmd | grep tomcat6 28781 Thu Oct 25 10:19:41 2018 07:13:10 #10:19分启动的