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

sed - это редактор потоков командной строки для фильтрации и преобразования текста.

751
Как я могу заменить строку в файле (ах)?

Замена строк в файлах на основе определенных критериев поиска является очень распространенной задачей. Как я могу заменить строку fooс barво всех файлов в текущем каталоге? сделать то же самое рекурсивно для подкаталогов? заменить только если имя файла совпадает с другой строкой? заменить только...

248
Какие символы мне нужно экранировать при использовании sed в скрипте sh?

Возьмите следующий скрипт: #!/bin/sh sed 's/(127\.0\.1\.1)\s/\1/' [some file] Если я попытаюсь запустить это в sh( dashздесь), это потерпит неудачу из-за круглых скобок, которые должны быть экранированы. Но мне не нужно избегать обратной косой черты (между октетами или в \sили \1). Какое правило...

243
Как я могу использовать sed для замены многострочной строки?

Я заметил, что если я добавлю \nшаблон для замены с использованием sed, он не будет соответствовать. Пример: $ cat > alpha.txt This is a test Please do not be alarmed $ sed -i'.original' 's/a test\nPlease do not/not a test\nBe/' alpha.txt $ diff alpha.txt{,.original} $ # No differences printed...

126
Заменить строку в огромном (70 ГБ), одной строке, текстовом файле

У меня есть огромный (70 ГБ), одна строка , текстовый файл, и я хочу заменить строку (токен) в нем. Я хочу заменить токен <unk>другим фиктивным токеном ( проблема с перчатками ). Я пробовал sed: sed 's/<unk>/<raw_unk>/g' < corpus.txt > corpus.txt.new но выходной файл...

109
Вернуть только часть строки после соответствующего шаблона

Таким образом, открывание файла с помощью catи последующее использование grepдля получения совпадающих строк только уводит меня, когда я работаю с определенным набором журналов, с которым я имею дело. Нужен способ сопоставления линий с шаблоном, но только для возврата части строки после...

101
Декодирование URL-кодировки (процентное кодирование)

Я хочу расшифровать кодировку URL-адреса, есть ли встроенный инструмент для этого или кто-нибудь может предоставить мне sedкод, который это сделает? Я немного поискал на unix.stackexchange.com и в Интернете, но не смог найти инструмента командной строки для декодирования кодировки URL. Я хочу...

95
Есть ли базовый учебник для grep, awk и sed? [закрыто]

Я был пользователем Linux некоторое время, и у меня есть довольно приличное понимание большинства распространенных утилит командной строки. Тем не менее, те , которые приходят и снова по отношению к составлению программ grep, awkи sed. Единственное, для чего я использовал grep - это добавление в...

85
Использование sed для поиска и замены сложной строки (желательно с регулярным выражением)

У меня есть файл со следующим содержанием: <username><![CDATA[name]]></username> <password><![CDATA[password]]></password> <dbname><![CDATA[name]]></dbname> и мне нужно сделать скрипт, который меняет «имя» в первой строке на «что-то», «пароль»...

85
Преобразовать содержимое файла в нижний регистр

У меня есть tempфайл с содержимым в нижнем и верхнем регистре. вход Содержание моего tempфайла: hi Jigar GANDHI jiga Я хочу преобразовать все верхнее в нижнее . команда Я попробовал следующую команду: sed -e "s/[A-Z]/[a-z]/g" temp но получил неправильный вывод. Выход Я хочу это как: hi jigar gandhi...

76
Как вставить текст перед первой строкой файла?

Я искал sedкоманду для добавления текста в файл в определенной строке. Это работает, добавляя текст после строки 1: sed '1 a\ Но я хочу добавить его перед строкой 1. Это будет: sed '0 a\ но я получаю эту ошибку: invalid usage of line address 0. Любое...

71
Удалить строку, содержащую определенную строку и следующую строку

Я использую это cat foo.txt | sed '/bar/d' удалить строки, содержащие строку barв файле. Однако я хотел бы удалить эти строки и строку сразу после нее . Предпочтительно в sed, awkили другой инструмент , который доступен в Mingw32. Это своего рода реверс , что я могу получить в grepс -Aи...

71
Показать все файлы до матча

grep --before-context 5 показывает 5 строк перед матчем. Я хочу показать все перед матчем. Делать grep --before-context 99999999будет работать, но это не очень ... профессионально. Как показать все файлы до...

69
Как разделить несколько пробелов на один с помощью sed?

sedна AIX не делает то, что я думаю, что должно. Я пытаюсь заменить несколько пробелов одним пробелом в выводе IOSTAT: # iostat System configuration: lcpu=4 drives=8 paths=2 vdisks=0 tty: tin tout avg-cpu: % user % sys % idle % iowait 0.2 31.8 9.7 4.9 82.9 2.5 Disks: % tm_act Kbps tps Kb_read...

69
Как вставить текст после определенной строки в файле?

Прямо сейчас я использую, echo "Hello World" >> file.txtчтобы добавить некоторый текст в файл, но мне также нужно добавить текст ниже определенной строки, скажем, «[опция]», это возможно с sed? НАПРИМЕР: Входной файл Some text Random [option] Some stuff Выходной файл Some text Random [option]...

64
Как прочитать первую и последнюю строку из вывода cat?

У меня есть текстовый файл. Задача - получить первую и последнюю строку из файла после $ cat file | grep -E "1|2|3|4" | commandtoprint $ cat file 1 2 3 4 5 Нужно это без вывода кошки (только 1 и 5). ~$ cat file | tee >(head -n 1) >(wc -l) 1 2 3 4 5 5 1 Возможно awk и более короткое решение...

61
Как я могу использовать переменные в LHS и RHS для замены sed?

Я хочу делать: cat update_via_sed.sh | sed 's/old_name/new_name/' > new_update_via_sed.sh в моей программе. Но я хочу использовать переменные, например, old_run='old_name_952' new_run='old_name_953' Я пытался их использовать, но замена не происходит (без ошибок). Я пытался: cat update_via_sed.sh...

61
Различия между sed на Mac OSX и другими «стандартными» sed?

У меня возникли некоторые проблемы с использованием ответа, предоставленного на этом сайте, на этот вопрос о команде sed, чтобы заменить пустую строку двумя другими строками контента , и она была поднята, если команда sed в Mac OS (10.6.7 для меня ) это отличается. Я не думаю, что это так, но мне...

56
Как проанализировать JSON с помощью сценариев оболочки в Linux?

У меня есть вывод JSON, из которого мне нужно извлечь несколько параметров в Linux. Это вывод JSON: { "OwnerId": "121456789127", "ReservationId": "r-48465168", "Groups": [], "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": null, "RootDeviceType": "ebs", "State": { "Code":...