linux - 使用 *nix 中的 column 命令格式化列表

我正在尝试格式化 bash 中的条目列表,并且正在使用 column 命令。但是, -t 选项默认使用任何空格作为分隔符,这不适用于我拥有的数据(它包含空格和制表符)。我不知道如何获取 -s 标志来指定换行符作为唯一的列分隔符。

最佳答案

理论上,要指定换行符,您可以使用 $'...' 表示法,它就像 '...' 一样,只是它支持C 风格的转义序列:

column -t -s $'\n' list-of-entries.txt

但是,我真的不明白这样做的目的。换行符是行分隔符,因此 $'\n' 的列分隔符相当于根本没有任何列分隔符:

column -t -s '' list-of-entries.txt

这意味着输入将被视为只有一列;所以相当于根本不使用column:

cat list-of-entries.txt

看起来您实际上想要使用 -t 标志,因为 -t 标志的目的是确保每一行输入变成一行输出,这听起来不像你想要的。我猜你想要这个:

column list-of-entries.txt

这会将 list-of-entries.txt 的每一行视为一个值,放入 column 输出的表格的一个单元格中。

https://stackoverflow.com/questions/12133062/

相关文章:

javascript - 在格式化数字输入时验证数字输入

javascript - 如何更改 winston 日志格式?

ide - 保存文件时禁用重新格式化代码

java - 删除 Eclipse 中的尾随空格——来自评论

php - 如何创建友好的日期格式(例如 "submitted 2 days ago")

c# - 在 Visual Studio 201x 中关闭 #region 的自动格式化

postgresql - 如何为 PostgreSQL 设置千位分隔符?

c# - 用逗号代替小数将数字格式化为字符串

formatting - printf, sprintf 至少打印两位小数

formatting - Fortran 中带有前导零的格式化输出