使用expand
,我不明白它将制表符转换为多少个空格。来自info expand
:
默认情况下,expand 将所有制表符转换为空格。它在输出中保留退格字符;他们减少选项卡计算的列数。默认操作等效于 -t 8(每 8 列设置选项卡)。
但是:
$ cat file
aa bb
$ cat -A file
aa^Ibb$
$ wc -m file
6 file
$ expand file > file2
$ cat -A file2
aa bb$
$ wc -m file2
11 file2
在这里,它将选项卡转换为 6 列。为什么?
来自OpenGroup 的描述
expand
:-t 8
将制表位分隔 8 个字符。由于输入aa
在制表符之前的行首有两个其他字符 ( ),因此只需六个空格即可到达下一个制表位。