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

Debian系统下如何让ss命令输出格式更易读?

优化ss命令输出可读性的实用技巧

我之前也被ss的默认输出格式坑过!尤其是进程名较长时自动换行成两行,或者直接执行列不对齐的问题,确实头疼。这里分享几个亲测有效的方法,帮你把输出变得清爽易读:

  • 强制单行输出+自动列对齐
    直接给ss加--nowrap参数就能解决换行问题,它会禁止输出内容自动换行,同时让列尽可能对齐。不管是直接执行还是管道到less/more,每条结果都保持单行,列也规整:

    ss -anptu --nowrap
    
  • 用column命令自动对齐所有列
    如果还是觉得列不够整齐,可以把ss的输出管道给column -t,它会自动识别列分隔符(空格)并重新对齐所有列,效果立竿见影:

    ss -anptu --nowrap | column -t
    

    要是不想加--nowrap,也可以直接用ss -anptu | column -t,不过遇到长进程名可能还是会有小瑕疵,结合--nowrap更稳妥。

  • 自定义输出字段,精简信息
    如果你不需要ss默认的所有字段,可以用-o参数指定要显示的内容,比如只保留协议、端口、进程ID和进程名:

    ss -tulpn -o state,sport,dport,pid,process
    

    这样输出会更简洁,列也更容易对齐。另外ss -tulpn其实是ss -anptu的常用简化写法(t=TCP、u=UDP、l=监听状态、p=进程信息、n=数字格式),输出本身就相对紧凑。

  • 用awk定制格式化输出
    要是需要更个性化的格式,比如固定列宽、合并字段,可以用awk来处理。比如把原来两行的结果合并成一行并对齐:

    ss -anptu | awk 'NR%2==1 {prev=$0} NR%2==0 {printf "%-70s %s\n", prev, $0}'
    

    或者针对--nowrap的输出,手动指定每列的宽度:

    ss -anptu --nowrap | awk '{printf "%-12s %-35s %-25s %-18s\n", $1, $5, $6, $7}'
    

    你可以根据自己的需求调整字段位置和宽度数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:36:05