Сб. Дек 14th, 2024

Взято с http://www.intuit.ru/department/os/linuxadmin/8/

Регулярное выражение – средство указания шаблона для поиска его в тексте.

 ^ — начало строки
 $ — конец строки
 [] — любой символ из заключённых в скобки. Поддерживает диапазоны, [0-9] – цифры, [a-zA-Z] -все буквы латинского алфавита
 [^] — любой символ за исключением заключенных в скобки
 \ — отменяет действие любого метасимвола. Например
 \$ — обозначает символ $ , а не \ в конце строки, а \\$ — символ \ в конце строки
 .- любой один символ.
 * — 0 или более раз в тексте встречается предыдущий шаблон. Так например выражение .* означает любой набор символов.

Bash поддерживает несколько операций сравнения. В случае, если условие верно, то оператор сравнения возвращает 0 (true) . Проверить возвращаемое значение можно с помощью специального значения $?. Перечислю их:

#проверка кода возврата последней команды
[ -d abcd ]
echo $?
#проверка прав доступа к файлу:
[ -d abcd ] #является ли файл abcd каталогом?
[ -f abcd ] #является ли файл abcd обычным файлом?
[ -L abcd ] #является ли файл abcd символической ссылкой?
[ -r abcd ] #есть ли доступ на чтение к файлу abcd?
[ -w abcd ] #есть ли доступ на запись к файлу abcd?
[ -s abcd ] #файл abcd имеет ненулевой размер (он не пуст)?
[ -u abcd ] #имеет ли файл abcd установленный бит SUID?
[ -x abcd ] #является ли файл abcd исполняемым?
#проверка строк
[ -z $STRING ] #пуста ли строка STRING?
[ -n $STRING ] #строка STRING не пуста?
[ $STRING = $STRING1 ] #равны ли строки STRING и STRING1?
[ $STRING != $STRING1 ] #строки STRING и STRING1 не равны? 
#проверка чисел
#при проверке чисел в условии их обязательно необходимо
#заключить в двойные кавычки
[ $DIGIT -eq $DIGIT1 ] #равны ли числа DIGIT и DIGIT1?
[ $DIGIT -ne $DIGIT1 ] #числа DIGIT и DIGIT1 не равны?
[ $DIGIT -gt $DIGIT1 ] #число DIGIT больше DIGIT1?
[ $DIGIT -lt $DIGIT1 ] #число DIGIT меньше DIGIT1?
[ $DIGIT -gе $DIGIT1 ] #число DIGIT больше или равно DIGIT1?
[ $DIGIT -lе $DIGIT1 ] #число DIGIT меньше или равно DIGIT1?

от RUSUA

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Анти-спам: выполните заданиеWordPress CAPTCHA