' AWK'这个Python代码的版本?

时间:2013-08-19 20:01:22

标签: python awk

这是我的Python代码:

with open('a') as f:
    a, b = f
    a, b = a.strip(), b.strip()

虽然这是我的AWK代码:

awk '{printf $1":"}' a

我想修改我的AWK代码,以便它可以完全执行上面的Python代码。

如上所示,AWK代码很乱。

我需要它从文件a中抓取第1行和第2行并允许我这样做 使用那些变量。就像在Python代码中一样。

或许还有其他一些原生于Linux的东西?

我应该研究一下?

如果我没弄错的话,有:

但最快的是AWK。

1 个答案:

答案 0 :(得分:3)

我希望您的Python代码具有良好的错误/异常处理,以防文件a有两行以上。

我假设您的文件只有两行,然后您可以在AWK中执行:

awk '{a[NR]=$0}END{ #here you could do whatever with a[1] (a) and a[2] (b)}' file

例如:

kent$  seq 2|awk '{a[NR]=$0}END{print "hello "a[1]; print "hi "a[2]}'
hello 1
hi 2

或者这个:

kent$  seq 2|awk '{a[NR]=$0}END{printf "%s:%s\n",a[1],a[2]}'           
1:2

我希望这会有所帮助。