SHELL/BASH:将空格转换为tab,并在Unix Shell脚本中使用tab字符

时间:2020-02-23 14:40:39  来源:igfitidea点击:

如何将空格分隔为制表符分隔。
如何在Unix Shell脚本中使用制表符。
如何使用Shell脚本在Unix中替换定界符。
用制表符替换多个空格。
将空格转换为制表符。
将定界空格转换为制表符定界。
在unix shell脚本中的不同列中使用制表符。

在本文中,将介绍显示多列相等对齐的步骤,即使用shell脚本将空格分隔为制表符分隔。

在Unix Shell脚本中使用TAB的示例

下面是一个示例衬纸示例,该示例使用printf使用选项卡打印多列。
我们可以在此处根据需要指定制表符长度。

[root@master ~]# printf "%-20s%-20s%-20s\n" "col1" "col2" "col3"
col1                col2                col3

要在函数中使用Unix shell脚本中的tab,可以使用以下解决方案

[root@master ~]# cat /tmp/align_column_with_tabs.sh
#!/bin/bash
function align_output {
   str_length=`echo -n  | wc -c`
   tab_length=`expr 15 - $str_length - 6`
   echo -n -e ""
   printf "%${tab_length}s"
   printf ": \n"
}
align_output col1 col2
align_output col3 col4
align_output col5 col6

我们可以在此处修改突出显示的值,以更改列之间的制表符长度。
现在,当我们运行脚本时,输出将如下所示

[root@master ~]# /tmp/align_column_with_tabs.sh
col1     : col2
col3     : col4
col5     : col6