以下のような内容のファイルがあり、3 つの列をフォーマット/整列する必要がありました。
ABCD XYZAB 1234
PQRSTUV STU 9113
LMN OPRQM 8966
次のシェルスクリプトを思いつきました:
while read -r col1 col2 col3;
do printf "%s%-80s%-80s\n" "$col1" "$col2" "$col3";
done <spaced-define.txt > tabbed-define.txt
間にスペースを入れて、次のように整列させることができました。
ABCD <SPACES> XYZAB <SPACES> 1234
PQRSTUV <SPACES> STU <SPACES> 9113
LMN <SPACES> OPRQM <SPACES> 8966
私が理解できないのは、スペースの代わりにタブを使用して同じ配置を実現する方法です?
ABCD <TABS> XYZAB <TABS> 1234
PQRSTUV <TABS> STU <TABS> 9113
LMN <TABS> OPRQM <TABS> 8966