我想通过许多定界符来解析文本文件,但是awk函数在我的代码中无法正常工作。我在哪里弄错了?
我已经尝试逐行读取文件,并且使用了awk函数来解析我的文本文件 看起来像这样:
===== aaaa ==== zxczxczxc ==== bbbb zzzz .c
===== aaaa ==== asdasdas ==== bbbb mmmm .c
===== aaaa ==== aqweqwea ==== bbbb zasd .c
作为输出,我想输入一个变量:
zxczxczxc
asdasdas
aqweqwea
第二个:
zzzz
mmmm
zasd
#!/bin/bash
input="/path/to/txt/file"
while IFS= read -r var
do
variable1= awk -f "===== aaaa ====,==== bbbb" '{print $2}' $var
variable2= awk -f "==== bbbb,.c" '{print $4}' $var
done < "$input"
答案 0 :(得分:1)
如果这还不是您想要的,请编辑您的问题以使其更清晰:
$ foo=$(awk '{print $4}' file)
$ bar=$(awk '{print $7}' file)
$ echo "$foo"
zxczxczxc
asdasdas
aqweqwea
$ echo "$bar"
zzzz
mmmm
zasd