Articles of текстовая обработка

Перенаправление совпадений sed в отдельные файлы

У меня есть файл, содержащий список имен последовательностей ДНК и другой, содержащий последовательности ДНК. Они выглядят так: $ cat list.txt seq1 seq3 $ cat sequences.txt >seq1 AAAAA AAAAA >seq2 CCCCC CCCCC CCCCC >seq3 TTTTT Я хочу получить только seq1 и seq2 (перечислены в list.txt) и перенаправить их на отдельные файлы. Как видите, каждая последовательность имеет […]

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

Если бы мне нужно было добавить имя пользователя в конец строки 32 файла, как бы я это сделал? Я могу найти в Google, как добавить текст в начало строки с помощью sed , но не могу понять, как добавить его в конец или даже в середину, если это было возможно.

Утилита для добавления содержимого в файл, если его еще нет в файле (даже частично)

Существует ли утилита * Nix, с помощью которой я мог бы добавлять содержимое в файл (скажем, добавлять содержимое файла шаблона в конец второго файла), только если содержимое еще не доступно во втором файле, частично от корки до корки? Можно использовать это решение grep, но я считаю, что код там немного сложнее, и предпочел бы выделенную […]

Korn / Bash Shell: Как мне конвертировать содержимое в приведенный ниже формат?

pid name tid mod state data ——————————————————————————– 39523 srv0051_0001_0 39642 20-10:59:28 Working 820000:500196:500077 43137 srv0051_0005_0 43156 20-10:59:28 Working 820000:4250501:840057 43895 srv0051_0006_0 43903 20-10:59:28 Working 820000:4250501:840057 47523 srv0051_0009_0 47547 20-10:59:28 Working 600005:4250501:4250846 48841 srv0051_0010_0 48851 20-10:59:28 Working 600005:4290000:4290000 58182 srv0051_0020_0 58188 20-10:59:28 Working 820000:4250501:840057 8297 srv0079_0008_0 8316 20-10:59:27 Working 600005:3070001:3050012 pid,name,tid,mod,state,appnbr,request,tasknbr,appctx,username 39523,srv0051_0001_0,39642,20-10:59:28,Working,820000,500196,500077 43137,srv0051_0005_0,43156,20-10:59:28,Working,820000,4250501,840057 43895,srv0051_0006_0,43903,20-10:59:28,Working,820000,4250501,840057 47523,srv0051_0009_0,47547,20-10:59:28,Working,600005,4250501,4250846 48841,srv0051_0010_0,48851,20-10:59:28,Working,600005,4290000,4290000 […]

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

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

Баш-текст к столбцу

Мне нужно объединить три TXT-файла в один CSV-файл, в котором первый TXT-файл переходит в первый столбец, второй TXT-файл переходит во второй столбец, а третий TXT в третий столбец. Количество элементов в каждом столбце не одинаково. Как это сделать в bash.

Как я могу удалить заголовки

Я хотел бы удалить оба заголовка (которые случайно повторяются). Любое решение для этого? [root@report]# iostat -xd 5 Linux 3.10.0-693.21.1.el7.x86_64 (mdds-pgbackup-01) 07/05/2018 _x86_64_ (2 CPU) Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util vda 0.07 0.28 0.31 4.22 9.25 28.56 16.72 0.08 16.70 38.40 15.12 5.92 2.68 scd0 0.00 0.00 0.00 0.00 […]

Как мне конвертировать содержимое в формат ниже?

pid name tid mod state data ————————————————————————- 39523 srv0051_0001_0 39642 20-10:59:28 Working 820000:500196:500077 43137 srv0051_0005_0 43156 20-10:59:28 Working 820000:4250501:840057 43895 srv0051_0006_0 43903 20-10:59:28 Working 820000:4250501:840057 47523 srv0051_0009_0 47547 20-10:59:28 Working 600005:4250501:4250846 48841 srv0051_0010_0 48851 20-10:59:28 Working 600005:4290000:4290000 58182 srv0051_0020_0 58188 20-10:59:28 Working 820000:4250501:840057 8297 srv0079_0008_0 8316 20-10:59:27 Working 600005:3070001:3050012 pid,name,tid,mod,state,appnbr,request,tasknbr,appctx,username 39523,srv0051_0001_0,39642,09-JUL-2018 12:36:10,Working,820000,500196,500077 43137,srv0051_0005_0,43156,09-JUL-2018 12:36:10,Working,820000,4250501,840057 43895,srv0051_0006_0,43903,09-JUL-2018 […]

сделать строку в столбец n вставить новую строку в каждую последнюю строку

у меня есть file.txt john, 5901, open lina, 2401, open jody, 5401, open Я хочу вставить новую строку в каждую последнюю строку, результат должен быть: john,5901,open lina,2401,open jody,5401,open что я пытаюсь cat file.txt | tr -d ‘\n’ но результат как этот john,5901,openlina,2401,openjody,5401,open

sed + пометить строку в случае пройденного слова

мы хотим пометить “#” совпадающую строку с помощью sed или perl line liner например мы хотим отметить все строки в файле, которые include слово DatePattern log4j.appender.DRFA.DatePattern=.yyyy-MM-dd ожидаемый результат #log4j.appender.DRFA.DatePattern примечание – если строка уже отмечена, она не добавит еще один знак «#» перед строкой