【问题标题】:tips on using a variable length in awk printf在 awk printf 中使用可变长度的提示
【发布时间】:2016-02-25 19:15:04
【问题描述】:

我是 awk 的初学者。如果我有一个输入

id varchar(2),
name varchar(10),
address varchar(20)

我可以用 awk 让它看起来像吗

id         varchar(2),
name       varchar(10),
address    varchar(20)

awk -F"|" ' {printf "%s%10d\n" ,$2, $3 }'

我希望能够在格式说明符中提及变量而不是 10 并使其可配置

awk -F"|" ' {length=10printf "%s%lengthd\n" ,$2, $3 }'

我们将不胜感激。

【问题讨论】:

  • 只要使用column -t file

标签: bash shell awk


【解决方案1】:

在 awk 中,printf 格式字符串只是一个可以连接的常规字符串。

所以如果要调整参数的长度,可以这样使用:

awk -F"|" '{length=10; printf "%s%" length "d\n" ,$2, $3 }'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 2013-10-09
    • 1970-01-01
    • 1970-01-01
    • 2013-07-12
    相关资源
    最近更新 更多