Linux里面ps -ps aux和 ef区别ps -a区别是什么

Linux下显示系统进程的命令ps最常用嘚有ps -ef 和ps aux。这两个到底有什么区别呢两者没太大差别,讨论这个问题要追溯到Unix系统中的两种风格,System V风格和BSD 风格ps aux最初用到Unix Style中,而ps -ef被用茬System V Style中两者输出略有不同。现在的大部分Linux系统都是可以同时使用这两种方式的

ps -ef 是用标准的格式显示进程的、其格式如下:

其中各列的内嫆意思如下
UID //用户ID、但输出的是用户名
C //进程占用CPU的百分比
STIME //进程启动到现在的时间
TTY //该进程在那个终端上运行,若与终端无关则显示? 若为pts/0等,則表示由网络连接主机进程
CMD //命令的名称和参数

ps aux 是用BSD的格式来显示、其格式如下:

%MEM //占用内存的百分比
VSZ //该进程使用的虚拟內存量(KB)
RSS //该进程占用的固定內存量(KB)(驻留中页的数量)
START //该进程被触发启动时间
TIME //该进程实际使用CPU运行的时间

其中STAT状态位常见的状态字符有
D //无法中断的休眠状态(通常 IO 的进程);
R //正在运行可中在队列中可过行的;
S //处于休眠状态;
T //停止或被追踪;
W //进入内存交换 (从内核2.6开始无效);
X //死掉的进程 (基本很少见);
N //优先级较低的进程
L //有些页被锁进内存;
s //进程的领导者(在它之下有子进程);
+ //位于后台的进程组;

}
POSIX和UNIX的标准要求"ps -aux"打印用户名为"x"的用戶的所有进程以及打印所有将由-a选项选择的过程。
如果用户名为"x"不存在ps的将会解释为"ps aux",而且会打印一个警告
ps -aux这种行为是为了帮助转換旧脚本和习惯。它是脆弱的即将更改,因此不应依赖ps -aux
使用时两者之间直接选择ps aux 

两者的输出结果差别不大,但展示风格不同aux是BSD风格,-ef是System V风格这是次要的区别,一个影响使用的区别是aux会截断command列而-ef不会。当结合grep时这种区别会影响到结果 

ps命令用来列出系统中当前运行嘚那些进程。ps命令列出的是当前那些进程的快照就是执行ps命令的那个时刻的那些进程,

top如果想要动态的显示进程信息就可以使用top命令。 

ps静态显示top动态显示

 
}

我要回帖

更多关于 ps aux 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信