试图理解一个简单的Linux代码

时间:2014-02-10 18:36:02

标签: linux bash unix awk

我试图找出以下命令在linux中的含义

awk 'match($0, "##SA") ==0 {print $0} ' $1 > ${G_DEST_DIR}/${G_DEST_FILENAME}

是否从给定参数中删除第1行并将其放在dest_dir下?

1 个答案:

答案 0 :(得分:2)

此awk打印输入文件中与模式不匹配的所有行:

##SA

此awk的输出被重定向到由以下表示的文件名:

${G_DEST_DIR}/${G_DEST_FILENAME}

注意$1这里是shell变量,它实际上是awk的输入文件。

虽然同样的awk缩写为:

awk '!/##SA/' "$1" > "${G_DEST_DIR}/${G_DEST_FILENAME}"