我的文件如下所示:
some random text : azoidfalkrnalrkazlkja
zlazekamzlekazmlekalzkemlkmlkmlkmlkmlkml
o&kjoik&oék"&po"éképo"k&éo"kéo"koé"kk"k"
Column1 Column2 Column3 Column4 Column5
=======================================
0 1 1000 No_Light X Disabled (Persistent)
1 1 1010 Online X E-Port 10:20:30:40:50:60:70:80 "some comment"
2 1 1020 Online X F-Port 10:00:00:00:00:00:00:00
3 1 1030 No_Light X Disabled (Persistent)
我可以使用grep "^ *[0-9].*Online" ./myfile
提取所有“在线”状态。然后,我如何提取每行的更多信息(例如,将每个值添加到$COLUMN
变量)?
我想从第3列中提取所有数据,然后将结果视为数组,从每行中提取数据。
编辑:引用Jotne的答案,我做了类似的事情:
COLUMN=3
MYVARIABLE=($(awk '/Online/ {print $c}' c="$COLUMN" file))
echo ${MYVARIABLE[0]}
答案 0 :(得分:2)
从eks专栏#3获取信息并在线:
COLUMN=3
awk '/Online/ {print $c}' c="$COLUMN" file
1010
1020