我尝试使用以下代码解析日志文件:
if [[ $line -match "=====.*" ]]; then
awk $2 = $vFiler;
echo "$vFiler";
解释:
有开始像图案线条=====
或“体积/ ......”后面的名称我想找到谁开始的所有生产线=====
or'vol / ......”,并设置如下等于一个变量的字符串,但我真的很努力做到这一点,我想到了带awk的if命令(我知道-match不是真正的命令)。
输入看起来像这样:
===== vfiler0
/vol/vol0
===== vFiler1
/vol/vol1
输出应为:
vFiler, Type
vFiler0, /vol/vol0
vFiler1, /vol/vol1
你们能帮我吗?我正在尝试在bash脚本中执行此操作,是否有可能像我在上面尝试过的那样获得“ if ...”?
我将使用以下内容:
awk -v RS="=====" -v OFS="," 'BEGIN {print "vFiler", "Type" } NF{print $1, $2}' file
它返回:
vFiler,Type
vfiler0,/vol/vol0
vFiler1,/vol/vol1
我们要做的是将记录分隔符设置为=====
。这样,====
每次都会处理一块。然后,只要有至少一个(NF
),就打印第一和第二字段。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句