2. работа с sed

sed (от англ. Stream EDitor) — потоковый текстовый редактор (а также язык программирования), применяющий различные предопределённые текстовые преобразования к последовательному потоку текстовых данных.

sed -e 's/x/y/' - замена x на y
sed -e '/^\s*$/d' inputFileName - удаляет пустые строки или строки

Поиск и замеа "foo" на "bar" в каждой строке:
  • sed 's/foo/bar/' (замена только первого совпадения в строке)
  • sed 's/foo/bar/4' (замена первых 4рех совпадений в строке)
  • sed 's/foo/bar/g' (замена ВСЕХ совпадений в строке)
  • sed 's/\(.*\)foo\(.*foo\)/\1bar\2/' (замена предпоследнего совпадения)
  • sed 's/\(.*\)foo/\1bar/' (замена только последнего совпадения)
Отсортировать абзацы файла в алфавитном порядке. Абзацы разделены пустой строкой. GNU sed использует \v для вертикального выравнивания, или это может быть любой уникальный символ:   sed '/./{H;d;};x;s/\n/={NL}=/g' file | sort | sed '1s/={NL}=//;s/={NL}=/\n/g' gsed '/./{H;d};x;y/\n/\v/' file | sort | sed '1s/\v//;y/\v/\n/'  

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