ps命令显示用户名而不是uid

使用ps命令时,发现部分用户显示的是用户名,有些用户显示的是UID。如下:

root     28521     1  0 Oct31 ?        00:06:05 ./login_spp_worker ./../etc/login_spp_worker1.xml
root     28524     1  0 Oct31 ?        00:06:07 ./login_spp_worker ./../etc/login_spp_worker1.xml
root     28528     1  0 Oct31 ?        00:06:10 ./login_spp_worker ./../etc/login_spp_worker1.xml
root     28531     1  0 Oct31 ?        00:06:12 ./login_spp_worker ./../etc/login_spp_worker1.xml
root     28534 28492  0 Oct31 ?        00:00:14 ./login_spp_dc_tool
607      29437     1  0 17:52 ?        00:00:00 ./spp_ctrl ../etc/spp_ctrl_sp.xml
607      29453     1  0 17:52 ?        00:00:00 ./spp_proxy ./../etc/spp_proxy_sp.xml
607      29455     1  0 17:52 ?        00:00:01 ./spp_worker ./../etc/spp_worker_sp.xml
607      29457     1  0 17:52 ?        00:00:01 ./spp_worker ./../etc/spp_worker_sp.xml

 

607是用户“zhailianxing”的uid。

通过man发现:  8位用户名的账户能够显示完整的用户名,9位用户名的账户就显示了UID

使用下面的命令来解决;

 ps -o ruser=userForLongName -e -o pid,ppid,c,stime,tty,time,cmd

注意:“userForLongName”是随便填写的,linux会自动检查此字符串的长度,为15,则15位以下的用户名都可以正常显示

现在运行 ps命令结果;

zhailianxing    28268     1  0 19:37 ?        00:00:00 ./spp_ctrl ../etc/spp_ctrl_sp.xml
zhailianxing    28284     1  0 19:37 ?        00:00:00 ./spp_proxy ./../etc/spp_proxy_sp.xml
zhailianxing    28286     1  0 19:37 ?        00:00:02 ./spp_worker ./../etc/spp_worker_sp.xml
zhailianxing    28288     1  0 19:37 ?        00:00:02 ./spp_worker ./../etc/spp_worker_sp.xml
root            28492     1  0 Oct31 ?        00:00:06 ./login_spp_ctrl ../etc/login_spp_ctrl1.xml
root            28508     1  0 Oct31 ?        00:00:17 ./login_spp_proxy ./../etc/login_spp_proxy1.xml
root            28510     1  0 Oct31 ?        00:06:19 ./login_spp_worker ./../etc/login_spp_worker1.xml

你可能感兴趣的:(基本命令)