[英]Awk - Adding specific number of spaces between columns
我的輸入文件具有均勻分布的列,如下所示:
X a b C D
我如何使用awk指定列之間的空格數,以便得到如下內容:
X a b C D
我知道如何使用awk計算列之間的間隔,我只是不知道如何添加這些間隔以獲取所需的布局。 有什么建議么?
與awk
$ echo "X a b C D" | awk '{printf "%-6s%-2s%-5s%-9s%s\n", $1,$2,$3,$4,$5}'
X a b C D
或直接與printf
$ echo "X a b C D" | xargs printf "%-6s%-2s%-5s%-9s%s\n"
X a b C D
這是printf派上用場的地方:
$ echo "X a b C D" | perl -lane 'printf "%-6s%-2s%-5s%-9s%s\n", @F'
X a b C D
根據需要調整字段寬度。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.