Книга: Искусство программирования на языке сценариев командной оболочки
33.3. Операции сравнения: Альтернативные решения
33.3. Операции сравнения: Альтернативные решения
Операции сравнения, выполняемые с помощью конструкции [[ ]], могут оказаться предпочтительнее, чем [ ]. Аналогично, при сравнении чисел, в более выгодном свете представляется конструкция (( )).
a=8
# Все, приведенные ниже, операции сравнения -- эквивалентны.
test "$a" -lt 16 && echo "да, $a < 16" # "И-список"
/bin/test "$a" -lt 16 && echo "да, $a < 16"
[ "$a" -lt 16 ] && echo "да, $a < 16"
[[ $a -lt 16 ]] && echo "да, $a < 16" # Внутри [[ ]] и (( )) переменные
(( a < 16 )) && echo "да, $a < 16" # не обязательно брать в кавычки.
city="New York"
# Опять же, все, приведенные ниже, операции -- эквивалентны.
test "$city" < Paris && echo "Да, Paris больше, чем $city" # В смысле ASCII-строк.
/bin/test "$city" < Paris && echo "Да, Paris больше, чем $city"
[ "$city" < Paris ] && echo "Да, Paris больше, чем $city"
[[ $city < Paris ]] && echo "Да, Paris больше, чем $city" # Кавычки вокруг $city не обязательны.
# Спасибо S.C.
- 33.1. Интерактивный и неинтерактивный режим работы
- 33.2. Сценарии-обертки
- 33.3. Операции сравнения: Альтернативные решения
- 33.4. Рекурсия
- 33.5. "Цветные" сценарии
- 33.6. Оптимизация
- 33.7. Разные советы
- 33.8. Проблемы безопасности
- 33.9. Проблемы переносимости
- 33.10. Сценарии командной оболочки под Windows
- Операции сравнения
- Логические операторы и операторы сравнения
- Что делать, если при установке принтера появляется сообщение Невозможно завершение операции. Подсистема печати недоступн...
- Операции с множествами узлов
- 11.2. Технология принятия решения в условиях чрезвычайной ситуации
- 4. Null-значения и логические операции
- 1. Операции объединения, пересечения, разности
- 2. Операции декартового произведения и естественного соединения
- 5. Производные операции
- 2. Унарные операции на языке структурированных запросов
- 3. Бинарные операции на языке структурированных запросов
- 5. Операции внутреннего соединения.