Книга: Искусство программирования на языке сценариев командной оболочки
Пример 9-15. Длина переменной
Пример 9-15. Длина переменной
#!/bin/bash
# length.sh
E_NO_ARGS=65
if [ $# -eq 0 ] # Для работы скрипта необходим хотя бы один входной параметр.
then
echo "Вызовите сценарий с одним или более параметром командной строки."
exit $E_NO_ARGS
fi
var01=abcdEFGH28ij
echo "var01 = ${var01}"
echo "Length of var01 = ${#var01}"
echo "Количество входных параметров = ${#@}"
echo "Количество входных параметров = ${#*}"
exit 0
${var#Pattern}, ${var##Pattern}
Удаляет из переменной $var наименьшую/наибольшую подстроку, совпадающую с шаблоном $Pattern. Поиск ведется с начала строки $var.
Пример использования из Пример A-8:
# Функцмя из сценария "days-between.sh".
# Удаляет нули, стоящие в начале аргумента-строки.
strip_leading_zero () # Ведущие нули, которые согут находиться в номере дня/месяца,
# лучше удалить
val=${1#0} # В противном случае Bash будет интерпретировать числа
return $val # как восьмеричные (POSIX.2, sect 2.9.2.1).
}
Другой пример:
echo `basename $PWD` # Имя текущего рабочего каталога.
echo "${PWD##*/}" # Имя текущего рабочего каталога.
echo
echo `basename $0` # Имя файла-сценария.
echo $0 # Имя файла-сценария.
echo "${0##*/}" # Имя файла-сценария.
echo
filename=test.data
echo "${filename##*.}" # data
# Расширение файла.
${var%Pattern}, ${var%%Pattern}
Удаляет из переменной $var наименьшую/наибольшую подстроку, совпадающую с шаблоном $Pattern. Поиск ведется с конца строки $var.
Bash версии 2 имеет ряд дополнительных возможностей.
- Пример 9-14. Подстановка параметров и сообщение о "порядке использования"
- Пример установочного скрипта
- Пример из практики
- ПРИМЕР ПРОСТОЙ ПРОГРАММЫ НА ЯЗЫКЕ СИ
- Использование переменной окружения ISC_PATH
- Примеры получения статистики
- Пример применения метода «пять почему»
- Пример 12-8. Частота встречаемости отдельных слов
- 1.2.5. Пример программы
- Пример 17-10. Блочный комментарий
- Примеры
- 2. Пример создания базового отношения в записи на псевдокоде