You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用ps命令获取进程所有者的完整用户名

解决ps aux命令中长用户名被截断的问题

问题场景

执行ps aux | grep someRegexCondition查找进程时,短用户名(如root)可正常显示,但长用户名(例如myLongUsername)会被截断为myLongUserna+。不想通过匹配/etc/passwd(存在冲突风险)或逐个PID查询ps -o user= -p "PID"的方式获取完整用户名,希望直接加宽用户名列显示完整名称。

可行解决方案

  • 使用--cols参数指定整体输出宽度,设置足够大的数值即可显示完整用户名:

    ps aux --cols 200 | grep someRegexCondition
    

    可根据实际需求调整200这个数值,确保能容纳最长的用户名。

  • 自定义输出字段并指定用户名列宽度,精准控制列宽:

    ps -eo user:20,pid,pcpu,pmem,cmd | grep someRegexCondition
    

    其中user:20表示将用户名列宽度设为20字符,可根据最长用户名长度调整数值;后续的pid,pcpu,pmem,cmd对应aux格式里的核心字段,保证输出信息和原命令一致。

  • 使用w参数启用宽输出,叠加两次w可最大化输出宽度:

    ps auxww | grep someRegexCondition
    

    该方式无需手动指定宽度,w会自动扩展列宽以显示完整内容,同时也能解决长命令行被截断的问题。

内容的提问来源于stack exchange,提问作者Thiemooo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 13:45:54