Страница 1 из 1
Аналог explode
Добавлено: 2011-09-14 13:41:20
M@}{
Приветствую!
Кто может подсказать аналог explode в php, думаю в perl он тоже есть.
Цель, разобрать IP адреса на массив $Ip[0], $Ip[1], $Ip[2], $Ip[3], и cделать реверс зону $Ip[3].$Ip[2].$Ip[1].$Ip[0].in-addr.arpa
Re: Аналог explode
Добавлено: 2011-09-14 14:58:54
skeletor
Re: Аналог explode
Добавлено: 2011-09-14 16:34:34
M@}{
мм, думаю меня не так поняли.
Не для перл, а для shell
Re: Аналог explode
Добавлено: 2011-09-14 21:41:58
FreeBSP
awk
sed
Re: Аналог explode
Добавлено: 2011-09-15 10:20:36
kpp
Код: Выделить всё
echo "192.168.0.23" | sed 's/^\([^\.]*\)\.\([^\.]*\)\.\([^\.]*\).\([^\.]*\)/\4.\3.\2.\1.in-addr.arpa/'
Код: Выделить всё
echo "192.168.0.23" | awk -F. '{print $4"."$3"."$2"."$1".in-addr.arpa"}'
Re: Аналог explode
Добавлено: 2011-09-15 13:27:14
M@}{
kpp писал(а):Код: Выделить всё
echo "192.168.0.23" | sed 's/^\([^\.]*\)\.\([^\.]*\)\.\([^\.]*\).\([^\.]*\)/\4.\3.\2.\1.in-addr.arpa/'
Код: Выделить всё
echo "192.168.0.23" | awk -F. '{print $4"."$3"."$2"."$1".in-addr.arpa"}'
Спасибо, но чтото я не пойму, как передать ему переменную
revers=`ifconfig eth0 | awk -F: '/inet addr/ {split($2, a, " "); print a[1]}' | awk -F. '$4"."$3"."$2"."$1".in-addr.arpa"'`
Так выводит пустую строку
revers=`echo ${ip} | awk -F. '$4"."$3"."$2"."$1".in-addr.arpa"'`
Тоже
Re: Аналог explode
Добавлено: 2011-09-15 14:36:15
kpp
Код: Выделить всё
ifconfig eth3 | awk -F: '/inet addr/ {split($2, a, " "); print a[1]}' | awk -F. '{print $4"."$3"."$2"."$1".in-addr.arpa"}'
Во 2-м вызове awk упущено
{print ... }
Re: Аналог explode
Добавлено: 2011-09-15 14:45:38
kpp
В этом случае, лучше воспользоваться одним sed-ом:
Код: Выделить всё
ifconfig eth0 | sed -n '/^[ ]*inet addr:/{; s/^[ ]*inet addr:\([^\.]*\)\.\([^\.]*\)\.\([^\.]*\).\([^ ]*\) .*$/\4.\3.\2.\1.in-addr.arpa/p}'