Tag: sed

awk или sed или perl: удалять только символы в определенном месте

У меня есть несколько файлов для переименования leng-1494-001 leng-1464-002 leng-2414-004 leng-7894-005 leng-1323-006 Я хочу переименовать его ferr-1494-001 ferr-1464-002 ferr-2414-004 ferr-7894-005 ferr-1323-006 Я знаю, как это сделать для ferr и leng, но как заменить символы от 6 до 10 (1464,7894) пустой строкой, например, или как aaaa bbbb cccc с помощью sed? Также приветствуется awk или perl-решение. […]

Как получить второе имя каталога в пути к файлу perforce?

Мне нужно получить каталог во втором столбце после депо. Например, для приведенного ниже списка файлов (ов) мне нужен «Directory2» в качестве вывода. //depot/Directory2/Dir3/Dir4/Dir5/Dir6/Filename1 //depot/Directory2/Dir3/Dir4/Dir5/Dir6/Filename2

Объяснение sed в сценарии оболочки

Я нашел фрагмент кода в Интернете, который действительно поможет создать частоту каждого слова в текстовом файле, но я хотел бы, чтобы кто-то объяснил, как это делается Особенно команда sed, так как я супер новичок в bash, и мне нужно знать, что делают все seperators ( s/\(.*\)/\L\1/ ). Вот код: cat EnglishText.txt sed 's/\.//g;s/\(.*\)/\L\1/;s/\ /\n/g' EnglishText.txt […]

что считаются старыми и мощными командами?

Я натолкнулся на термины awk и sed, awk проходит один раз через все строки и выполняет задачу всякий раз, когда строка удовлетворяет определенному условию, sed может манипулировать потоком ввода, прежде чем он перейдет к выходу. Я лично не знаю, с какой целью их использовать, но я заметил, что они называются мощными даже святыми командами. Помимо […]

Выполните поиск регулярных выражений по ранее определенной линии с регулярным выражением (однострочный)

Мне нужно напечатать строку, которая находится в уникальной строке в длинном текстовом файле. Пример соответствующей строки в файле long.txt : Software version 4.0.10, 2002-03-28 4.0.10 строка точно равна 4.0.10 . Шаги, вероятно, следующие: Сопоставьте линию; например, с регулярным выражением, например, /^Software/ После того, как строка найдена, выполните поиск по ней для требуемой строки (другое регулярное […]

Используя sed, добавьте строки линии X выше соответствия

Я знаю, что, чтобы добавить / добавить что-то, мне просто нужно сделать: sed -i '/pattern/a new thing!' Тем не менее, я хотел бы соответствовать строке и добавить что-то на две строки выше. Я хотел бы ограничивать инструменты только теми, которые выходят из коробки с помощью ubuntu 12.04, я не знаю, подходит ли awk для счета. […]

Как использовать адрес содержимого в sed в osx без ошибки «ожидаемый контекстный адрес»

Я получаю эту ошибку sed: 2: " /^[[:space:]]*pause$/, …": expected context address с этой строкой: /^[[:space:]]*pause$/,+1d который работает на моей дебианской системе Ubuntu. Полный файл file_in=$1 sed -e' # # Delete whole lines /^<?xml/d /^<[!]DOCTYPE/d /^<\(.*html\|.*head\|meta\|.*body\)/d /^<\(.*table\|.*head\|meta\|.*body\)/d /^[[:space:]]*<[/]*tr.*>$/d /storeConfirmation/d # # Remove pieces of a line s/<td>// s%</*td.*>%% # # Replacements – chunks /^<link/ { […]

Как выполнить команду оболочки, созданную с использованием echo и sed?

Я пробовал делать: echo " mv /server/today/logfile1 /nfs/logs/ && gzip /nfs/logs/logfile1" | sed 's|logfile1|logfile2|g' Он напечатал: mv /server/today/logfile2 /nfs/logs/ && gzip /nfs/logs/logfile2 который является командой bash. Как я могу заставить его выполняться, а не просто печатать его?

выбрать и переместить содержимое в другой файл

У меня есть файл с содержимым ниже. Все, что мне нужно сделать, это отфильтровать скрипт ALTER, в котором есть ключевое слово UNIQUE, и переместить его в другой файл. Я попытался использовать sed -n '/ALTER TABLE/,/UNIQUE("ID");/p' file . Но это не сработало. ALTER TABLE RELEASE.ACL_ENTRY ADD CONSTRAINT RELEASE.FK5111A FOREIGN KEY( ACL_OID ) REFERENCES RELEASE.ACL ( OID […]

Изменить файл в / etc с помощью сценариев оболочки?

Как использовать sed для редактирования файла /etc/heat/heat.conf ? Я хочу добавить новые строки в разделе по умолчанию [DEFAULT] rabbit_host =controller rabbit_password =RABBIT_PASS

Linux и Unix - лучшая ОС в мире.