我有这个代码的问题..我无法弄清楚我必须写作条件来削减我的文件与awk。Bash脚本Awk条件
i=0
while [ $i -lt 10 ]; #da 1 a 9, Ap1..Ap9
do
case $i in
1) RX="54:75:D0:3F:1E:F0";;
2) RX="54:75:D0:3F:4D:00";;
3) RX="54:75:D0:3F:51:50";;
4) RX="54:75:D0:3F:53:60";;
5) RX="54:75:D0:3F:56:10";;
6) RX="54:75:D0:3F:56:E0";;
7) RX="54:75:D0:3F:5A:B0";;
8) RX="54:75:D0:3F:5F:90";;
9) RX="D0:D0:FD:68:BC:70";;
*) echo "Numero invalido!";;
esac
echo "RX = $RX" #check
awk -F, '$2 =="$RX" { print $0 }' File1 > File2[$i] #this is the line!
i=$(($i + 1))
done
正确
的echo命令输出,但是当我在AWK使用相同的“$ RX”的条件它不工作(它打印空白页)。 我的文件1:
1417164082794,54:75:D0:3F:53:60,54:75:D0:3F:1E:F0,-75,2400,6 1417164082794,54:75:D0:3F :56:10,54:75:D0:3F:1E:F0,-93,2400,4 1417164082794,54:75:D0:3F:56:E0,54:75:D0:3F:1E:F0, -89,2400,4 1417164082794,54:75:D0:3F:5A:B0,54:75:D0:3F:1E:F0,-80,2400,4 1417164082794,54:75:D0:3F: 53:60,54:75:D0:3F:1E:F0,-89,5000,2
你能告诉我正确的表达过 “awk -F ...”
非常感谢你!
变量不会在单引号内扩展。 – Biffen 2015-04-01 10:40:11
awk中的变量与bash中的变量不同 – Neo1989 2015-04-01 10:41:16
'$ 2 ==''“$ RX”'“{print $ 0}' – anishsane 2015-04-01 10:46:16