输入:
a-0;Password-1010;c-ss;d-fk;h-14;i-jawad;j-dd;[email protected];
a-7990:15:71;b-aa;c-1;Password-2020;h-iOS;[email protected];
输出:
[email protected],1010
[email protected],2020
我的输入文件与我的示例相同。我只想直接用分隔符打印Email
和。Password
,
文件中的每一行都包含稳定的单词;Email-
and;Password-
我尝试过,awk -F';' '{ print $8, $2 }'
但它不会给出我的目标,因为它需要一些修改。
答案1
由于您所需的输出在每行的同一字段中不一致,因此我建议循环字段,尝试替换Email-
和Password-
前缀,并在替换成功时记录结果:
awk '
BEGIN {
FS=";"; OFS=",";
}
{
for (i=1;i<=NF;i++) {
if (sub(/^Email-/,"",$i))
e = $i;
else if (sub(/^Password-/,"",$i))
p = $i;
}
print e, p
}' file
[email protected],1010
[email protected],2020