我正在尝试格式化 bash 中的条目列表,并且正在使用该column
命令。但是,该-t
选项默认使用任何空格作为分隔符,这不适用于我拥有的数据(它包含空格和制表符)。我不知道如何让-s
标志指定换行符作为唯一的列分隔符。
问问题
21309 次
2 回答
13
理论上,要指定换行符,您可以使用符号,除了它支持 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
输出表的一个单元格中的值。
于 2012-08-26T23:27:19.203 回答
6
这可以输出制表符分隔文件的漂亮打印版本
column -t -s $'\t' list-of-entries.txt
于 2012-12-20T01:34:45.100 回答