Запитання з тегом «sed»

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

8
Як вивести лише захоплені групи з sed?
Чи є спосіб сказати sedвиводити лише захоплені групи? Наприклад, дані: This is a sample 123 text and some 987 numbers та візерунок: /([\d]+)/ Чи можу я отримати лише 123 і 987 вихід у форматі, який відформатується за допомогою зворотних посилань?
277 regex  sed 

5
Які відмінності між Perl, Python, AWK та sed? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

8
Вставте рядок після першого матчу за допомогою sed
Я чомусь не можу знайти прямої відповіді на це, і на даний момент я переживаю трохи кризи. Як би я пішов про вставку рядка тексту вибору після першого рядка, що відповідає певній рядку за допомогою sedкоманди. У мене є ... CLIENTSCRIPT="foo" CLIENTFILE="bar" І я хочу вставити рядок після CLIENTSCRIPT=рядка, що …
245 shell  sed 

7
Знайдіть і замініть sed у каталозі та підкаталогах
Я запускаю цю команду, щоб знайти та замінити всі події "apple" на "помаранчевий" у всіх файлах кореня мого сайту: find ./ -exec sed -i 's/apple/orange/g' {} \; Але це не проходить через підкаталоги. Що не так з цією командою? Ось кілька рядків виходу find ./: ./index.php ./header.php ./fpd ./fpd/font ./fpd/font/desktop.ini …

13
sed in-place flag, який працює як на 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 -> 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 Завдяки цій команді для кожного рядка, у якому є "blah", я отримую вихідний рядок, який містить "blah", і наступний рядок, що слідує в лог-файлі. Це може бути простим, але я не можу знайти спосіб пропустити лінію, яка має "бла" і лише показати наступний рядок у висновку.
218 awk  sed  grep 

23
Як використовувати sed для заміни лише першого появи у файлі?
Я хотів би оновити велику кількість вихідних файлів C ++ додатковими директивами включення перед будь-якими існуючими #includes. Для такого завдання я зазвичай використовую невеликий скрипт bash з sed, щоб переписати файл. Як я можу 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 root …
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.