Вопросы с тегом «sed»

Sed (Stream EDitor) - редактор командной строки для среды POSIX. Sed обрабатывает один или несколько файлов в соответствии со сценарием редактирования и записывает результаты в стандартный вывод. Созданный в Bell Labs, он существует с середины 70-х годов.

8
Как вывести только захваченные группы с помощью sed?
Есть ли способ сказать, sedчтобы вывести только захваченные группы? Например, с учетом ввода: This is a sample 123 text and some 987 numbers и шаблон: /([\d]+)/ Могу ли я получить только 123 и 987 вывод способом, отформатированным обратными ссылками?
278 regex  sed 

5
Каковы различия между Perl, Python, AWK и sed? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

8
Вставьте строку после первого совпадения, используя sed
По какой-то причине я не могу найти простой ответ на этот вопрос, и сейчас я немного переживаю. Как бы я вставил строку выбора после первой строки, соответствующей определенной строке, используяsed команду. У меня есть ... CLIENTSCRIPT="foo" CLIENTFILE="bar" И я хочу вставить строку после CLIENTSCRIPT=строки, в результате чего ... CLIENTSCRIPT="foo" CLIENTSCRIPT2="hello" …
245 shell  sed 

7
Найти и заменить на sed в каталоге и подкаталогах
Я запускаю эту команду, чтобы найти и заменить все вхождения «apple» на «orange» во всех файлах в корне моего сайта: find ./ -exec sed -i 's/apple/orange/g' {} \; Но это не проходит через подкаталоги. Что не так с этой командой? Вот некоторые строки вывода find ./: ./index.php ./header.php ./fpd ./fpd/font …

13
Флаг sed in-place, который работает как на Mac (BSD), так и на Linux
Есть ли вызов sedредактирования «на месте» без резервного копирования, который работает как в Linux, так и в Mac? В то время как BSD, sedпоставляемый с OS X, кажется, нуждается sed -i '' …, sedдистрибутивы GNU Linux обычно поставляются с интерпретацией кавычек как пустое имя входного файла (вместо расширения резервной копии), …
237 linux  macos  sed  bsd 


8
Как заменить несколько шаблонов одновременно с помощью sed?
Предположим, у меня есть строка 'abbc', и я хочу заменить: ab -> bc bc -> ab Если я попробую две замены, результат будет не тем, что я хочу: echo 'abbc' | sed 's/ab/bc/g;s/bc/ab/g' abab Так какую команду sed я могу использовать для замены, как показано ниже? echo abbc | sed …
231 replace  syntax  sed 

13
Сценарий оболочки - удалить первую и последнюю кавычку (") из переменной
Ниже приведен фрагмент сценария оболочки из более крупного сценария. Он удаляет кавычки из строки, содержащейся в переменной. Я делаю это с помощью sed, но эффективно ли это? Если нет, то каков эффективный путь? #!/bin/sh opt="\"html\\test\\\"" temp=`echo $opt | sed 's/.\(.*\)/\1/' | sed 's/\(.*\)./\1/'` echo $temp
225 string  bash  shell  unix  sed 

11
Как показать только следующую строку после совпавшей?
grep -A1 'blah' logfile Благодаря этой команде для каждой строки, содержащей «бла», я получаю вывод строки, содержащей «бла», и следующую строку в лог-файле. Это может быть простой, но я не могу найти способ пропустить строку, которая имеет «бла» и показать только следующую строку в выводе.
218 awk  sed  grep 

23
Как использовать sed, чтобы заменить только первое вхождение в файле?
Я хотел бы обновить большое количество исходных файлов C ++ с помощью дополнительной директивы include перед любым существующим #include. Для такого рода задач я обычно использую небольшой скрипт bash с sed, чтобы переписать файл. Как мне sedзаменить только первое вхождение строки в файле, а не заменять каждое вхождение? Если я …

15
Как вставить текст в начале файла?
До сих пор я был в состоянии найти, как добавить строку в начале файла, но это не совсем то, что я хочу. Я покажу это на примере Содержание файла some text at the beginning результат <added text> some text at the beginning Это похоже, но я не хочу создавать новую …
213 linux  bash  sed 

13
Команда для получения n-й строки STDOUT
Есть ли какая-нибудь команда bash, которая позволит вам получить n-ю строку STDOUT? То есть что-то, что могло бы принять это $ ls -l -rw-r--r--@ 1 root wheel my.txt -rw-r--r--@ 1 root wheel files.txt -rw-r--r--@ 1 root wheel here.txt и делать что-то вроде $ ls -l | magic-command 2 -rw-r--r--@ 1 …
210 bash  shell  sed  stdout 

10
Подстановка переменной среды в sed
Если я запускаю эти команды из скрипта: #my.sh PWD=bla sed 's/xxx/'$PWD'/' ... $ ./my.sh xxx bla это нормально. Но если я бегу: #my.sh sed 's/xxx/'$PWD'/' ... $ ./my.sh $ sed: -e expression #1, char 8: Unknown option to `s' Я прочитал в уроках, что для замены переменных окружения из оболочки …
202 linux  unix  shell  sed 

9
Изменить несколько файлов
Следующая команда корректно изменяет содержимое 2 файлов. sed -i 's/abc/xyz/g' xaa1 xab1 Но мне нужно динамически изменить несколько таких файлов, а я не знаю их имен. Я хочу написать команду, которая будет читать все файлы из текущего каталога, начиная с, xa*и sedдолжна изменить содержимое файла.
194 sed 

4
недопустимый код команды., несмотря на экранирование, используя sed
Будучи вынужденным использовать CVS для текущего клиента, а адрес изменился для удаленного репо. Единственный способ найти удаленный адрес в моем локальном коде - это рекурсивный поиск и замена. Тем не менее, с командой sed я ожидал работать: find ./ -type f -exec sed -i "s/192.168.20.1/new.domain.com/" {} \; Я получаю сообщение …
187 bash  macos  sed 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.