Articles of sed

Могу ли я использовать sed / awk / etc для замены частей файла текстом из stdin?

У меня есть скрипт конфигурации, который делает в основном это: #!/bin/bash source vars.sh cat >foo.output <<EOF # some static stuff (many lines…) variable_bit=($SOME_VAR, $SOME_OTHER_VAR, …) # some more static stuff (many lines…) EOF Было бы лучше иметь какой-нибудь другой файл, назовите его foo.output.template , который выглядел так # some static stuff (many lines…) VARIABLE_BIT # […]

Распечатать совпадение и строку после

У меня есть некоторые данные, где 4-й столбец будет или frz или – . Я хотел бы найти все строки, где 4-й столбец равен frz только если 4-й столбец на следующей строке – и затем вывести обе строки. Пример ввода: 2018-04-09T14:15:23.366Z 7 multi – uuid1 uuid2 uuid3 – 2018-04-09T14:15:23.978Z 8 multi frz uuid1 uuid3 – […]

Извлечение слов из нескольких строк с помощью AWK / SED

Я ищу логику, в которой я пытаюсь извлечь слова из нескольких строк с помощью команды AWK в Linux. Пробовал несколькими способами с AWK и SED, но безрезультатно. приложенный текстовый файл и ожидаемый вывод

Заменить значение атрибута XML значением переменной оболочки

У меня есть приведенные выше примеры данных. В каком файле будет ИМЯ ПАПКИ с некоторым значением. Я должен заменить его на другое значение, которое является переменной, которую я хочу заменить FOLDER NAME = “ABC” на DEF sed -i “s/<FOLDER NAME=\"\*\"/<FOLDER NAME=\"$FLDR\"/g" Gather.XML Приведенные выше команды sed не допускают ошибок, но не заменяют их.

Не заменяйте второе вхождение шаблона в том же слове в файле командой sed

echo “abcdef12cade 12345678 abcdefba12345678” | sed -E “s/[0-9a-fA-F]{8}/00000000/g” вышеизложенное выводит следующее 00000000cade 00000000 0000000000000000 это заменяет образец для второго вхождения в том же слове. Я не хочу заменять, если есть второе вхождение. ожидаемый выход 00000000cade 00000000 abcdefba12345678

sed заменит вопрос

Мой файл содержит $Param_T=ABC49_SA_T2 $Param_V=ABC49BC_SA_V2 $Param_ST=ABC491_SA_M2 Я пытаюсь заменить значение начинается с ABC * _ на XYZ12_ sed -i ‘s/ABC\.*_/XYZ12_/g’ INCR.parm Выше приведена команда sed, которую я использовал. Это не выдает никакой ошибки, но значение не меняется. Может кто-нибудь помочь мне с этим?

Составить список слов из списка файлов

Как можно взять на себя эту задачу? Я попытался сделать это с tr, и придумать это (с помощью другого подобного вопроса): tr -c ‘[:alnum:]’ ‘[\n*]’ < long_concatenated_file но .. Это небольшая проблема. :alnum: это только список символов и цифр. Я попытался смягчить это после прочтения man : tr -c ‘[:alnum:=-=]’ ‘[\n*]’ < long_concatenated_file который должен […]

удалить чтение из файла fastq

Я хочу удалить четыре строки из файла fastq. Например, обычно файл выглядит так: (каждому образцу соответствуют четыре строки) @M04241:303:000000000-BR896:1:1102:21438:12389 1:N:0:TATGGCAC TGTCAGCCGCCGCGGTAATACGGAGGGTCCGAGCGTTATCCGGAATTATTGGGTTTAAAGGGTCCGCAGGCGGGCTTATAAGTCAGGGGTGGAATGGTGCGGCTCAACCGTAGCACTGCCCTTGATACTGTTAGTCTTGAGTTATGGTGGAGTGGCCGGAATATGTAGTGTAGCGGTGAAATGCATAGATATTACATAGAACACCGATCGCGAAGGCAGGTCACTAACCATTTGACTGACGCTGATGGACGAAAGCGTGGGGAGCGAACAGGATTAGATACCCTGGTAGTCCACGCCGGAAACGATGGATACTAGCTGTCGGGCACTTGTGCTCGGCGGCCAAGCGAAAGTGATAAGTATCCCACCTGGGGAGTACGTGCGCAAGAATGAAACTCAAATGAATTGACGG + EGGGGGGGGGGGGGGGGGGGGGGGDE@FFGEEEGGGGDGFEFGGGGGGGGGGGGGGGGGGGGGGGDGEFFGGGCGGFDFGGGG>F>DE@GG6@GGG@G9<EGGGG9FGGGGGG7FGGDDEFGGGGGGGGGGGGGGGGCEFGGGGFG?EFFCFGGGGGGFGG?GGGGGGGG=EGEGGGGGGGGGGGFGCGGFGGGGCFFF6CD7DDFFFFFED9:BFCBEE@DEF:@EGCFCF@FFFD?=A:CFEF0<CFB>@6+C,@GFFGFDGGF<AFEFB+FEECGFF9FDFAC6@+:@FC:GFC,CFC,EFGE,9FFCGFF<@;6:,FD,D:FGGFFGF7@8+7,,CF<<6CF<CC-CA@FGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG@@FGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG Но я нашел один пример, в котором две пустые строки из четырех пустые, вот так: @M04241:303:000000000-BR896:1:1103:11464:7575 1:N:0:TATGGCAC + @M04241:303:000000000-BR896:1:1103:23291:21403 1:N:0:TATGGCAC CTGCGGCACCGCAGGGCAAGCCCCCCGACGCCTAGCCCACATCGTTTAGGGCGTGGACTACCAGGGTATCTAATCCTGTTTGCTCCCCACGCTTTCGCGCCTCAGCGTCAGTGCCGGACCAGAGAGCCGCTTTCGCCACCGGTGTTCCACCCAATATCTACGAATTTCACCTCTACACTGGGTATTCCACCCTCCTCTTCCGGACTCGAGCACCGCAGTCTCGGCTGCACCTCCGGGGTTGAGCCCCGGGCTTTCACAGCCGACTTGCGACGCCGCCTACGCGCCCTTTACGCCCAGTGATTCCGAACAACGCTAGCACCCTCCGTCTTACCGCGGCGGCTGAC + CCCCCGGGGGG>FGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG@@FGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG @M04241:303:000000000-BR896:1:1103:26180:21941 1:N:0:TATGGCAC CCGCCAATTTCTTTGAGTTTCAGCCTTGCGACCATACTCCCCAGGCGGGGTACTTAACACTTTTGATTCGGCAGTGCACCCATGTTAGTCCACTACCTAGTACCCATCGTTTAGGGCTAGGACTACCGGGGTATCTAATCCCGTTCGCTACCCTAGCTTTCGCGCCTCAGCGTCAGAAGAGGTCCAGCACGTCGCTTTCGCCACCGGCGTTCCTTCCGATCTCTACGCATTTCACCGCTCCACCGGAAGTTCCACATGCCCCTACCTCCCTCGAGATTGGCAGTTTCGAAGGCAGTTCTACAGTTGAGCTGCAGGATTTCACCTCCGACTGACCTATCCGCCTACGCGCCCTTTAAGCCCAGTGATTCCGAACAACGTTCGC + CCCCCGEGGGGGGGGGGEGGGGGGGGGGDFGGGGGGGGGGGGGEGGGGGGEFGGGFFFFGGGGGG,CEFGGGGGGGGGG?GGGGGG9FFGGGGGGGCGGGGGGGGGCFGGGG@GGGGGFGGGGGGGGGCGGFGGGGGGGGGGGGGGGGGGGGGGGFFGGGGGGGGGDEGGGGGGGDGGGGFGFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGEGGGDGEFGGEEGGGGFGGGGGGGGGGGGGGGGGGGGGEF?GGGEGGEEFEFFDFFGFGGFGGGGGGFFFGFGGGGGGGGGFGGGGFCGGGGGGGGGFFGGGGGGGGGGGGGGGFF@7GGGGGGGGGGGGGGGFDFCGGGGFEFGGFGGGGGGGGFGFEGGGG @M04241:303:000000000-BR896:1:1102:21438:12389 1:N:0:TATGGCAC TGTCAGCCGCCGCGGTAATACGGAGGGTCCGAGCGTTATCCGGAATTATTGGGTTTAAAGGGTCCGCAGGCGGGCTTATAAGTCAGGGGTGGAATGGTGCGGCTCAACCGTAGCACTGCCCTTGATACTGTTAGTCTTGAGTTATGGTGGAGTGGCCGGAATATGTAGTGTAGCGGTGAAATGCATAGATATTACATAGAACACCGATCGCGAAGGCAGGTCACTAACCATTTGACTGACGCTGATGGACGAAAGCGTGGGGAGCGAACAGGATTAGATACCCTGGTAGTCCACGCCGGAAACGATGGATACTAGCTGTCGGGCACTTGTGCTCGGCGGCCAAGCGAAAGTGATAAGTATCCCACCTGGGGAGTACGTGCGCAAGAATGAAACTCAAATGAATTGACGG + […]

перебирая и удаляя заголовок в определенных каталогах

Я хочу перебрать только определенные каталоги и удалить первую строку файлов, заданную в качестве входных параметров в этих каталогах. Мои входные параметры должны быть: -i [input_directory] – корневой каталог -n [directory] каталоги для проверки файлов file ending Беги как sh -i /main/folder/ -n (sub1|sub2|sub6) .txt Скрипт должен удалять только заголовки для файлов *.txt в sub1 […]

Замените только шестнадцатеричные цифры, игнорируйте, если их меньше или больше, чем 8 цифр Использование команды sed

Пример: Входные данные: 0x12345678 0aef1234 0098adefa 123456789 Ожидаемый результат: 0x00000000 00000000 0098adefa 123456789 Пробовал это: sed -E “s/[0-9a-fA-F]{8}/00000000/g” Но это заменяет, даже если есть более 8 шестнадцатеричных цифр.