为什么-t 2和-t 3会少空格呢?求指导
echo -e '1\t2' > t
expand -t 1 t
1 2
expand -t 2 t
1 2
expand -t 3 t
1 2
为什么-t 2和-t 3会少空格呢?求指导
echo -e '1\t2' > t
expand -t 1 t
1 2
expand -t 2 t
1 2
expand -t 3 t
1 2
tab一般默认为8个字符的宽度,但是这里要注意的是tab的宽度代表了前一个字符串的末尾到后一个字符串的开头的距离。可以在vim里面数一数,a tab b的宽度是a和b之间加7个空格,所以如果tab默认是n的话,中间是有n-1个空格的。
expand存在的意义是把tab改换成空格,所以:
expand -t 1 t
当你选的空格数为1的时候,理论上两个字母中间的空格数应该是0,但是这样不合乎常理,所以会给你多加一个空格,所以1的时候是一种特殊状态,正常的状态应该是从2开始的。
1 回答1.4k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答775 阅读✓ 已解决
1 回答1.7k 阅读
2 回答804 阅读✓ 已解决
1 回答974 阅读✓ 已解决
\t
是指对齐到哪一列,而不是代表几个空格。简单测一下: