我在文件中有以下行。请注意,我有意将第二行中的额外哈希值保持在2和0之间。 文件名:test.txt的Unix Shell脚本 - AWK分隔符问题
Name#|#Age#|#Dept
AC#|#2#0#|#Science
BC#|#22#|#Commerce
我使用awk来获得系列中的数据
awk -F "#|#" -v c="Dept" 'NR==1{for (i=1; i<=NF; i++) if ($i==c){p=i; break}; next} {print $p}' "test.txt" >> result.txt
的的Result.txt显示我下面
|
Commerce
第一行作为管道来,因为如果在第一行额外的#。 任何人都可以在此帮助
也许尝试'的awk -F“#[|]# “'... –
[管道符号|在AWK字段分隔符中](https://stackoverflow.com/questions/34801373/pipe-symbol-in-awk-field-delimiter) –
'awk -F'#\ |#''也可以。 – karakfa