我正在写这段代码:
awk -F'=' '!/^$/{arr[$1]=$2}END{for (x in arr) {print x"="arr[x]}}' 1.txt 2.txt
此代码忽略空白行,但我也想忽略以 # 开头的行(注释)。
知道如何添加多个模式吗?
更改!/^$/
为
!/^($|#)/
或者
!/^($|[:space:]*#)/
如果您想忽略#
.
awk 'NF && $1!~/^#/' data.txt
将打印所有非空行(字段NF
数不为零)和不包含#
作为第一个字段的行。
它将正确处理一行空白,因为 NF 将为零,并且前导空白$1
将忽略它们。
awk 'NF && !/^[:space:]*#/' data.txt
因为 '[:space:]*' 捕获一个或多个空格。