[英]awk condition for first line replacement
我有一个 shell 替换此文件的第一行:
TABLE;APGFBEBA; ;
NoSS;CHAR(13);N° assuré;
DtDebExo;CHAR(8);Date début;
通过这个:
01 APGFBEBA.
但我也有最初看起来像这样的文件:
Table;APGFNOJF; ; ;
所以我尝试在我的 awk 命令中添加一个“或”条件,这样我就可以像上面那样替换这些行,但不幸的是它不起作用
这是我的 awk 命令:
awk -F ';' '
$1=="TABLE" && $3==" " || $1=="TABLE" && $4==" " {
printf "01 %s.\n\n", $2;
next
}
第一个条件有效,但第二个条件无效
将我的评论转换为答案,以便将来的访问者轻松找到该解决方案。
你不需要||
匹配两行的条件为
awk -F ';' '
toupper($1)=="TABLE" && $3 == " " {
printf "01 %s.\n\n", $2
}' file
应该适用于两条线。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.