1、首先制表符\t占多少个空格并不是固定不变的。
2、不同系统会以4个或8个空格为基本长度,记为tabL,则实际的缩进长度:
length = |n - tabL| % tabL
计算机会把制表符/t前的字符串转化成每tabL一组,其中n表示制表符/t最前面一组字符长度。
那么制表符/t占的空格个数spaceL:
length, (当length != 0 时)
tabL, (当length == 0 时)
echo -e "1\t2";echo -e "12\t2";echo -e "123\t2";echo -e "1234\t2";echo -e "12345\t2";echo -e "123456\t2";echo -e "1234567\t2";echo -e "12345678\t2";echo -e "123456789\t2"
注:我的终端默认tab是8个空格,可以通过tabs命令修改。