use-outer-variables-in-awk

awk 命令中使用外部定义的变量。

做好了的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
for (( i = 1; i < 22; i++ ))
do
cijTempName=`cat $tempfile | gawk '$1 == loop {print $4}' loop=$i`

if [ $i -ge 2 ] && [ $i -le 6 ]
then
if [ -z $cijTempName ]
then
echo -e "-\t\c"
else
echo -e $cijTempName"\t\c"
fi
else
if [ -z $cijTempName ]
then
echo -e "0\t\c"
else
echo -e $cijTempName"\t\c"
fi
fi

done

使用 awk(gawk 是 AWK 的 GNU 版本)获取每行第一个位置的元素,并与外面的 loop counter 比较,如果比配,则打印这一行中的 第四个元素,否则,1-6 loop 中打印 “-”,后面的打印 0。

关键点 gawk 中判断 \$1 与 loop counter 如何处理。

格式:awk ‘{action}’ 变量名=变量值

这样传入变量,可以在action中获得值。 注意:变量名与值放到’{action}’后面。

如果要在 BEGIN 的action不能获得变量值,使用 参数 v,即是 awk -v 。这里没用到。

pic

pic

参考内容

---------本文结束感谢阅读---------
Title - Artist
0:00