Добавьте слово в конец каждой строки, начинающейся с>, в файле с помощью команды unix

Вы можете использовать опцию -adjoin команды convert:

convert -adjoin *.png out.pdf

Эта команда приведет к созданию одного pdf файла со всеми png изображениями.

0
09.05.2019, 11:15
2 ответа

Вы не указали, должно ли одно и то же слово добавляться к совпадающим строкам (, начинающимся с >), поэтому я предположил простейший случай. sedниже добавляет "PLOP" в конце всех строк, начинающихся с >:

.
tmpFile=$(mktemp)
echo -e 'hello world\n>FASTA sequence\nhello again' > "$tmpFile"
echo 'BEFORE :'
cat "$tmpFile"
sed -ri '/^>/ s/^(.*)$/\1 PLOP/' "$tmpFile"
echo 'AFTER :'
cat "$tmpFile"
[ -f "$tmpFile" ] && rm "$tmpFile"
0
28.01.2020, 03:42

Решение с awk

awk '{ if ($0 ~ "^>") { $0=$0" added" }} {print $0}' list

или сэд

sed -E "s|^>(.+)$|>\1 added|" list
0
28.01.2020, 03:42

Теги

Похожие вопросы