Помогите написать простенький скрипт.

Технические вопросы по UTM 5.0
Ответить
Kristian
Сообщения: 95
Зарегистрирован: Ср мар 04, 2009 21:32

Помогите написать простенький скрипт.

Сообщение Kristian »

Нужно написать скрипт сравнения. Поскольку опыт написания у меня мал, может кто подскажет ....

Нужно написать кусок скрипта, сравнивающий два значения.
Логика такова:
Если адрес содержит в себе 10. либо 192.168. то выполнять А, если адрес содержит Х.Y.Z, то делать С

Адрес передается как какая либо переменная.
Накопал вот такое в инете ... не знаю насколько подойдет

[[ $a == z* ]] # истина, если $a начинается с символа "z" (сравнение по шаблону)
[[ $a == "z*" ]] # истина, если $a равна z*

[ $a == z* ] # имеют место подстановка имен файлов и разбиение на слова
[ "$a" == "z*" ] # истина, если $a равна z*

Аватара пользователя
detx
Сообщения: 346
Зарегистрирован: Вт мар 11, 2008 12:00
Откуда: Нижний Новгород

Re: Помогите написать простенький скрипт.

Сообщение detx »

Kristian писал(а):Нужно написать скрипт сравнения. Поскольку опыт написания у меня мал, может кто подскажет ....

Нужно написать кусок скрипта, сравнивающий два значения.
Логика такова:
Если адрес содержит в себе 10. либо 192.168. то выполнять А, если адрес содержит Х.Y.Z, то делать С

Адрес передается как какая либо переменная.
Накопал вот такое в инете ... не знаю насколько подойдет

[[ $a == z* ]] # истина, если $a начинается с символа "z" (сравнение по шаблону)
[[ $a == "z*" ]] # истина, если $a равна z*

[ $a == z* ] # имеют место подстановка имен файлов и разбиение на слова
[ "$a" == "z*" ] # истина, если $a равна z*
Зайди на какой-нить фрилансерский сайт, они тебе за пару баксом мигом скриптик на коленке набросают

freebeer
Сообщения: 21
Зарегистрирован: Пн апр 02, 2007 13:50

Сообщение freebeer »

Код: Выделить всё

fb@fb-laptop:~$ echo "10.10.10.10" | awk '{ if (/^(10\.|192\.168\.)/) { print "A" } else { print "B" } }'
A
fb@fb-laptop:~$ echo "192.168.1.1" | awk '{ if (/^(10\.|192\.168\.)/) { print "A" } else { print "B" } }'
A
fb@fb-laptop:~$ echo "100.10.10.10" | awk '{ if (/^(10\.|192\.168\.)/) { print "A" } else { print "B" } }'
B
fb@fb-laptop:~$ echo "192.10.10.10" | awk '{ if (/^(10\.|192\.168\.)/) { print "A" } else { print "B" } }'
B

http://www.ibm.com/developerworks/library/l-awk1.html
http://www.ibm.com/developerworks/library/l-awk2.html
http://www.ibm.com/developerworks/library/l-awk3.html

Kristian
Сообщения: 95
Зарегистрирован: Ср мар 04, 2009 21:32

Сообщение Kristian »

Спасибо большое, кто откликнулся :).
Но я решил включить моск и сам написал. Может кому пригодится:
скрипт, парсит строку переменной и в зависимости от совпадения - выполняет что либо :):

Код: Выделить всё

#!/bin/bash
ip="SomeIP"

if [ "x`echo $ip | cut -c1,2,3,4,5,6,7,8`" = "x192.168." ]; then echo 192.168subnet
elif [ "x`echo $ip | cut -c1,2,3,4,5,6,7`" = "x172.16." ]; then echo 172.16subnet
elif [ "x`echo $ip | cut -c1,2,3`" = "x10." ]; then echo 10.subnet
else echo not ok
fi

А по поводу зайти на сайт и заплатить .... дык форум тогда нафик нужен :).

Аватара пользователя
detx
Сообщения: 346
Зарегистрирован: Вт мар 11, 2008 12:00
Откуда: Нижний Новгород

Сообщение detx »

А по поводу зайти на сайт и заплатить .... дык форум тогда нафик нужен Smile.
Форум нужен для того чтобы вам помочь в проблеме, а не для того чтобы он все за вас делал. Сначало надо хотя бы было самому что-нибудь наковырять, а потом уже просить о помощи показывая то , что вы наковыряли. А вот такой вопрос
Нужно написать скрипт сравнения.
Это не к форумчанам, это к фрилансерам

Ответить