-L
是 的一个有用功能wc
,或者我认为。它打印最长行的长度。出于某种原因,它将单字节 tab-char 扩展到 8 的长度。
有什么方法可以将其设置为不“扩展”选项卡?这种扩张背后的原因可能是什么?
echo -n $'\t' | wc -L
Run Code Online (Sandbox Code Playgroud)
产出 8
wc (GNU coreutils) 7.4
GNU bash,版本 4.1.5
enz*_*tib 12
case '\t':
linepos += 8 - (linepos % 8);
Run Code Online (Sandbox Code Playgroud)
似乎故意选择以这种方式行事,可能是为了提示在屏幕上显示文件所需的宽度。
一个快速的替代方案可能是
echo -n $'\t' | tr '\t' ' ' | wc -L
Run Code Online (Sandbox Code Playgroud)