[[sed - примеры]]

sed - примеры

Замена

  • Простая замена

sed 's/было/стало/g' -i file.txt

Ключ '-i' для записи изменений в файле
  • Заменить значение option=NO на YES:

sed '/^option=/s:NO:YES:' file.txt

  • Заменить значение option="NO" на YES:

sed 's/^\([ \t]*option="\)\(NO\)"/\1YES"/' file.txt

  • Замена только в строках начинающихся со слова Start:

sed '/^Start/s/было/стало/g' file.txt

  • Замена только в строках не содержащих @:

sed '/@/b; s/было/стало/g' file.txt

Фильтры

  • Печать файла без пустых строк или строк содержащих только пробелы:

sed '/^ *$/d' file.txt

  • Печать файла без пустых строк или строк содержащих только пробелы и/или табуляции

sed '/^[ \t]*$/d' file.txt

  • Печать файла без комментариев и пустых строк:

sed '/^ *#/d; /^[ \t]*$/d' file.txt

  • Печать определенных строк:

# Вывести только 3-тью строку:
sed -n '3p' file.txt
# Вывести со 2 по 5 стоку:
sed -n '2,5p' file.txt

  • Печать файла без последней строки

  sed '$d' file.txt

Поиск

Получить значение опции APACHE2_OPTS="value"

sed '/^[ \t]*APACHE2_OPTS=/!d; s/^[ \t]*APACHE2_OPTS="\(.*\)"/\1/' /etc/conf.d/apache2

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
18​ +14 = ?
 
practice/bash/bash_sed_sample.txt · Последние изменения: 2016/02/11 10:59 — lexa
Gentoo Linux Driven by DokuWiki