LINUX.ORG.RU

Объединение строк

 


0

1

Добрый вечер!
Есть текстовый файл вида:

+ 123
456
789 -
+ 234
567
890 -

Нужно объединить все строки между + и -, и получить в результате:
+ 123 456 789 -
+ 234 567 890 -

Как это можно сделать?

Ответ на: комментарий от aedeph_

Нашла только как все строки файла объединять с помощью sed, а как все между определенными знаками - никак(

Anna270289
() автор топика
derlaft@odd:~$ cat t
+ 123
456
789 -
+ 234
567
890 -
derlaft@odd:~$ cat t | sed -n -e '1h;1!H;${;g;s/\n//g;s/-/-\n/g;p;}'
+ 123456789 -
+ 234567890 -
derlafff ★★★★★
()
Последнее исправление: derlafff (всего исправлений: 2)
cat $FILE | tr -d '\n' | grep -o '+[^-]*-'
schizoid ★★★
()

awk '!/-$/{printf"%s",$0}/-/'

AITap ★★★★★
()

echo $(< sign.txt)|sed 's/- +/-\n+/g'

zolden ★★★★★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.