Доброго дня!
Необходимо распарсить MAC-адрес с присвоением каждой части отдельной переменной, работа ведётся в Busybox, так что фукционал ограничен.
user
# echo $num
00:01:02:03:04:0d
# for i in `seq 1 1 6`; do echo $num | awk -F: "{print \$$i}"; done
00
01
02
03
04
0d
# for i in `seq 1 1 6`; do n$i=`echo \$num | awk -F: "{print \\$$i}"`; done
-sh: n1=00: not found
-sh: n2=01: not found
-sh: n3=02: not found
-sh: n4=03: not found
-sh: n5=04: not found
-sh: n6=0d: not found
# echo $n6
Я не понимаю, почему не срабатывает конструкция с присвоением значений, подскажите?
Спасибо.
Потому что нельзя таким образом делать косвенное обращение к переменным (в данном случае, n$i). for i in $(seq 1 1 6); do eval $(echo "n$i=$(echo $num | awk -F: "{print \$$i}")"); done