新闻详情

新闻详情

首页 / 资讯中心 / 详情

Linux column 命令详解:按列格式化输出文本的完整实战指南(linux-command 命令手册)

发布时间:2026/9/30 2:19:22来源:尧图网络
Linux column 命令详解:按列格式化输出文本的完整实战指南(linux-command 命令手册)
文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载column是 Linux 下最实用的文本排版工具之一它能把凌乱的单列或多列数据整理成对齐工整的表格甚至直接输出结构化 JSON。本篇以 linux-command 项目收录的 command/column.md 文档为骨架系统讲解其语法、全部选项与三组实战示例并结合仓库的索引数据dist/data.json与构建脚本scripts/dash.mjs说明该命令在文档生态中的定位。读完本文你将能熟练使用column处理日志对齐、配置解析、/etc/passwd等文件的格式化输出。命令概览column命令的功能是按列格式化输出文件它支持两种典型的使用模式将单列数据整理为多列显示每行宽度可指定超出的部分自动换行适合把一长串垂直数据压缩成横向表格将多列数据进行快速整理对齐每列的字符把原本参差不齐的文本按空白符或自定义分隔符切分为表格列并逐列对齐。它常用于管道处理链中配合cat、grep、awk等命令的输出做最后的排版美化。由于多数主流 Linux 发行版默认自带该命令column -V可查看版本无需额外安装即可使用。概要语法column [options] [file ...]options控制列宽、表格模式、分隔符、JSON 输出等行为详见下文选项表file ...一个或多个输入文件多个文件按顺序处理。参数与数据来源file可选是唯一的位置参数。当没有指定文件时column默认从标准输入读取数据因此可以配合管道符使用echo -e b 2\na 1 | column -t这一特性让column成为 Shell 管道排版链中的常见收尾工具。指定多个文件时各文件内容会被依次拼接处理若某个文件不存在column会向标准错误输出提示并继续处理其余文件。选项速查表选项说明-c, --columns width输出宽度以字符数表示。用于单列转多列场景超出指定宽度的内容会自动换行折成下一列-t, --table创建表格模式按分隔符切分输入并为每列字符对齐-s, --separator string指定识别表格输入的分隔符可传多个字符如,、:、空格默认按空白符切分-o, --output-separator string指定表格输出的列分隔符默认是两个空格-x, --fillrows在列之前填充行即先横向填满一行再换行填充-N, --table-columns names添加列名逗号分隔为后续列赋予语义名称-J, --json格式化为 JSON 输出需要配合-N/--table-columns使用-h, --help显示帮助信息-V, --version输出版本信息几个容易被忽略的组合要点-t决定是否按表格语义切分列-s只影响切分规则不影响输出-o只有在-t表格模式下才生效默认输出分隔符为两个空格-J输出 JSON 时必须以-N声明列名否则无法为每条记录生成键值对-x与默认的“先按列填充”方向相反适合需要横向优先排列的场景。返回值column成功执行后将格式化排列后的字符串输出到标准输出。它不产生独立的返回码语义在管道链中通常作为末端排版步骤使用其输出可直接重定向到文件cat test | column -t aligned.txt实战一整理单列数据先用 Shell 生成 26 个英文字母每个字母单独一行作为单列测试数据# 生成 26 个英文字母每列一个 $ for a in {a..z}; do echo $a; done test指定输出宽度-c 60每行最大 60 个字符字母被自动编排成多列超出宽度的内容折行$ cat test | column -c 60 a e i m q u y b f j n r v z c g k o s w d h l p t x可以看到 26 个字母被折成 7 列且列间已按最长项自动留白对齐。二次排版-t对齐在上面的基础上进一步整理-t会把每列之间的空白规范为默认的两个空格$ cat test | column -c 60 | column -t a e i m q u y b f j n r v z c g k o s w d h l p t x自定义输出分隔符-o , 指定每列之间用, 逗号加空格拼接$ cat test | column -c 60 | column -t -o , a, e, i, m, q, u, y b, f, j, n, r, v, z c, g, k, o, s, w d, h, l, p, t, x该组合非常适合把纵向数据转成 CSV 风格或对齐的中文表格。实战二整理多列数据多列文本往往长短不一、分隔符混杂column的表格模式能一键对齐。以下是一段模拟芯片引脚信号的凌乱文本test$ cat test Address[0] Metal3,pin 133.175:159.92 Address[1] Metal3,pin 112.38:159.92 Address[2] Metal3,pin 70.775:159.92 Address[3] Metal3,pin 41.655:159.92 DataIn[0] Metal3,pin 66.615:159.92 DataIn[1] Metal3,pin 37.495:159.92 DataIn[2] Metal3,pin 122.88:159.92 DataIn[3] Metal3,pin 95.74:159.92 DataOut[0] Metal3,pin 45.815:159.92 DataOut[1] Metal3,pin 79.095:159.92 DataOut[2] Metal3,pin 104.055:159.92 DataOut[3] Metal3,pin 62.46:159.92 MemReq Metal3,pin 108.215:159.92 RdWrBar Metal3,pin 87.415:159.92 clock Metal3,pin 74.935:159.92默认空白符对齐-t直接按空白符切分并对齐三列信号名、金属层、坐标首列因长度不同自动补齐空格$ cat test | column -t Address[0] Metal3,pin 133.175:159.92 Address[1] Metal3,pin 112.38:159.92 Address[2] Metal3,pin 70.775:159.92 Address[3] Metal3,pin 41.655:159.92 DataIn[0] Metal3,pin 66.615:159.92 DataIn[1] Metal3,pin 37.495:159.92 DataIn[2] Metal3,pin 122.88:159.92 DataIn[3] Metal3,pin 95.74:159.92 DataOut[0] Metal3,pin 45.815:159.92 DataOut[1] Metal3,pin 79.095:159.92 DataOut[2] Metal3,pin 104.055:159.92 DataOut[3] Metal3,pin 62.46:159.92 MemReq Metal3,pin 108.215:159.92 RdWrBar Metal3,pin 87.415:159.92 clock Metal3,pin 74.935:159.92多分隔符切分-s ,: 将,、:和空格都识别为分隔符原本混在Metal3,pin 133.175:159.92中的元素被进一步拆成 5 列$ cat test | column -t -s ,: Address[0] Metal3 pin 133.175 159.92 Address[1] Metal3 pin 112.38 159.92 Address[2] Metal3 pin 70.775 159.92 Address[3] Metal3 pin 41.655 159.92 DataIn[0] Metal3 pin 66.615 159.92 DataIn[1] Metal3 pin 37.495 159.92 DataIn[2] Metal3 pin 122.88 159.92 DataIn[3] Metal3 pin 95.74 159.92 DataOut[0] Metal3 pin 45.815 159.92 DataOut[1] Metal3 pin 79.095 159.92 DataOut[2] Metal3 pin 104.055 159.92 DataOut[3] Metal3 pin 62.46 159.92 MemReq Metal3 pin 108.215 159.92 RdWrBar Metal3 pin 87.415 159.92 clock Metal3 pin 74.935 159.92-s的取值是一个字符集合空格在-s ,: 中同样作为分隔符参与切分这使其非常擅长解析坐标、CSV、key:value等混合格式文本。实战三添加列名并以 JSON 格式输出-J与-N组合可以把表格化数据直接输出为结构化 JSON适合交给下游脚本或程序消费。以/etc/passwd为例其字段以:分隔按序为用户名、口令、UID、GID、备注、主目录、登录 Shell$ column -J -s : -N Username,Password,UID,GID,Gecos,HomeDirectory,Shell /etc/passwd { table: [ { username: root, password: x, uid: 0, gid: 0, gecos: root, homedirectory: /root, shell: /bin/bash },{ username: daemon, password: x, uid: 1, gid: 1, gecos: daemon, homedirectory: /usr/sbin, shell: /usr/sbin/nologin },{ username: bin, password: x, uid: 2, gid: 2, gecos: bin, homedirectory: /bin, shell: /usr/sbin/nologin },{ username: sys, password: x, uid: 3, gid: 3, gecos: sys, homedirectory: /dev, shell: /usr/sbin/nologin },{ username: sync, password: x, uid: 4, gid: 65534, gecos: sync, homedirectory: /bin, shell: /bin/sync } ] }两点实操提示列名必须与字段一一对应-N中声明的 7 个列名对应-s :切分出的 7 个字段列数不匹配会导致输出结构错位JSON 键会自动小写化从输出可见Username变为username、HomeDirectory变为homedirectory即-N提供的列名在 JSON 键中被规范化处理脚本侧解析时需按小写键名取值。在 linux-command 仓库中的定位与延伸column文档来自 linux-command 项目收录的 600 多个 Linux 命令手册之一属于“文本处理”类命令。在仓库中可以找到它的结构化索引索引数据 dist/data.json 中记录了column的条目{ n: column, p: /column, d: 按列格式化输出文件 }n为命令名p为详情页路径d为描述该索引同时驱动着项目构建出的静态文档站与搜索功能项目 README.md 将column归入文本处理分类与awk、col、colrm、comm、csplit、sed、sort、tr、uniq、vi、wc等命令并列说明其定位是文本排版链中的基础工具构建脚本 scripts/dash.mjs 展示了该文档集如何被打包成 Dash/Zeal 离线文档通过 sqlite3 建立searchIndex索引这意味着column手册同样可以在离线文档集中被检索使用。在文本处理管道中column常与同类命令配合sort负责排序、uniq负责去重、tr负责字符替换而column -t负责最终的对齐呈现。例如sort /etc/passwd | column -t -s : -N User,Pass,UID,GID,Gecos,Home,Shell -J | head -40小结column用极少的选项解决了“文本对齐”这一高频需求单列数据column -c 宽度折列显示可再叠加-t、-o细化排版多列数据column -t一键对齐-s支持多字符分隔符解析复杂文本结构化输出-N-J将任意分隔符文本转为 JSON供脚本与程序直接消费。建议结合 command/column.md 原文档与仓库内其他文本处理命令如 command/sort.md、command/uniq.md、command/tr.md对照阅读即可构建完整的终端文本处理工具箱。赞分享文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载相关推荐Linux 光盘刻录命令 cdrecord 实战指南linux-command 命令手册详解Linux 光盘刻录命令 cdrecord 实战指南linux command 命令手册详解 本篇指南聚焦 Linux 系统下的经典刻录命令 cdrecor文档教程linux-command 命令手册详解consoletype 命令——输出已连接终端类型linux command 命令手册详解consoletype 命令——输出已连接终端类型 导读 consoletype 是 Linux 系统诊断与脚本编写中文档教程Linux 命令手册详解linux-command 仓库中的 cksum 文件完整性校验指南Linux 命令手册详解linux command 仓库中的 cksum 文件完整性校验指南 cksum 是 Linux 系统中用于校验文件完整性的基础命令文档教程上一篇LinkSwift网盘直链下载助手九大主流网盘高速下载的终极解决方案下一篇炉石传说脚本终极指南5分钟解放双手的自动化神器创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

如何给DSH小鲸鱼挂件贡献代码:分支策略、Issue与PR规则的完整指南 2026/9/30 13:51:26

如何给DSH小鲸鱼挂件贡献代码:分支策略、Issue与PR规则的完整指南

如何给DSH小鲸鱼挂件贡献代码:分支策略、Issue与PR规则的完整指南 【免费下载链接】DeepSeek-Balance-Whale-Widget DeepSeek Harness(DSH)一只住在 DSH 界面右下角的小鲸鱼娘,帮你盯着DeepSeek账户余额。QQ弹弹,支持拖…

阅读更多 →
【NLP】大模型长文本处理技术与GLM-4-Plus评测:从上下文窗口到TaoToken统一调用 2026/9/30 13:51:19

【NLP】大模型长文本处理技术与GLM-4-Plus评测:从上下文窗口到TaoToken统一调用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
【Linux指南】动静态库系列(九):动态库如何进入进程地址空间:从磁盘 .so 到共享内存映射 2026/9/30 13:51:06

【Linux指南】动静态库系列(九):动态库如何进入进程地址空间:从磁盘 .so 到共享内存映射

文章目录一、动态库为什么比静态库更常用二、动态库也是文件三、动态库加载的整体流程四、从磁盘 .so 到物理内存五、从物理内存到进程虚拟地址空间六、多个进程如何共享同一个动态库七、共享的是代码,不是什么都共享八、为什么动态库加载地址不固定九、使用 /proc …

阅读更多 →
PSE认证证书有效期多久,产品改款后是否需要重新做认证? 2026/9/30 13:50:59

PSE认证证书有效期多久,产品改款后是否需要重新做认证?

PSE并不是一张所有产品都按统一年限有效的“永久证书”。需要先区分产品是否属于特定电气用品,以及企业持有的是符合性检查证书、检测报告还是其他合规文件。产品改款后,也不能仅凭外观变化判断是否需要重新认证,关键要看改动是否影响安全结构…

阅读更多 →
企业级AI知识库建设实战:从RAG架构到混合检索与元数据治理 2026/9/30 13:50:45

企业级AI知识库建设实战:从RAG架构到混合检索与元数据治理

开头今年上半年,我们海博团队在推进 AI-Native 研发体系的时候,发现一个特别扎心的事实:模型能力早就不是瓶颈了,真正卡住团队进度的是知识底座。代码仓库里那些散落的决策文档、写了没人看的架构说明、只有某个老员工脑子里的业务…

阅读更多 →
渲染书籍目录汇总:六大分支与学习路径全解析 2026/9/30 13:50:45

渲染书籍目录汇总:六大分支与学习路径全解析

作为常年跟渲染打交道的人,我书架上的这份“渲染书籍目录汇总”已经维护了一年多,标题里的“不断更新中”不是客套话,是真实状态。之所以维护这个目录,是因为每年都要被问同一个问题:想学渲染,到底该看哪些…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉