Работа со строками в bash

В этой заметке я поведаю вам некую тонкость при работе со строками в bash

{#string} — Длина строки

Извлечение подстроки

${string:position} — с position до конца

${string:position:length} — с position длиной length символов

${string: -length} — последние length символов

Удаление части строки

${string#substring} — до первого с начала

${string##substring} — до последнего с начала

${string%substring} — до первого с конца

${string%%substring} — до последнего с конца

Замена подстроки

${string/substring/replacement} — первое вхождение

${string//substring/replacement} — все вхождения

${var/#Pattern/Replacement} — Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в начале строки (префикс), то оно заменяется на Replacement. Поиск ведется с начала строки

${var/%Pattern/Replacement} — Если в переменной var найдено совпадение с Pattern, причем совпадающая подстрока расположена в конце строки (суффикс), то оно заменяется на Replacement. Поиск ведется с конца строки

Примеры:

a="12345" 
echo "${#a}" 
echo "${a}" 
echo "${a:3}" 
echo "${a#12}" 
echo "${a/12/21}"
А как загнать содержимое файла в переменную?:
a="$(<file)"
строки в bash
  • 27 января 2011, 14:02
  • Oden

Комментарии (0) Вконтакте (0) facebook ()

Комментарии (0)

RSS свернуть / развернуть

комментировать

Ваше имя
Ваш e-mail (будет скрыто и используется только для отправки ответов на ваш комментарий)
Вы — гость, и вам запрещено использовать HTML-теги.
 
Введите цифры и буквы: