【发布时间】:2022-01-07 14:05:40
【问题描述】:
我有一个 shell 替换了这个文件的第一行:
TABLE;APGFBEBA; ;
NoSS;CHAR(13);N° assuré;
DtDebExo;CHAR(8);Date début;
通过这个:
01 APGFBEBA.
但我也有最初看起来像这样的文件:
Table;APGFNOJF; ; ;
所以我尝试在我的 awk 命令中添加一个“OR”条件,这样我就可以像上面那样替换这些行,但不幸的是它不起作用
这是我的 awk 命令:
awk -F ';' '
$1=="TABLE" && $3==" " || $1=="TABLE" && $4==" " {
printf "01 %s.\n\n", $2;
next
}
第一个条件有效,但第二个条件无效
【问题讨论】:
-
awk -F ';' 'toupper($1)=="TABLE" {printf "01 %s.\n\n", $2}' file应该适用于这两行。 -
主题包含短语
first line replacement...这是否意味着您只想更改文件的 first 行?如果是这样,我建议使用显示文件前几行的示例输入来更新问题,然后显示相同 few lines 的预期输出