Мне нужен скрипт, который вводит файл и выводит на экран его содержимое с удаленными переносами строк - так сказать, «завернутые в слова».
Я пробовал:
#!/bin/bash
find $HOME '$1' | while read line; do echo "${line}"; done
но это просто ничего не возвращает.
bash
,line
,end
,remove
.echo `cat some_file.ext`
Я нашел этот соответствующий ответ в stackoverflow:
/programming/1251999/sed-how-can-i-replace-a-newline-n
Самый быстрый способ - это использовать tr:
или для вашего примера:
Чтобы узнать больше о
tr
команде сделать, конечно,man tr
.В способе stackoverflow есть способы сделать это с помощью sed (это был бы мой первый выбор, но sed очень ориентирован на строки и заставляет его не интерпретировать переносы строк, так как разделители полей неясны) и способ использования read и bash, близкий к вашему. первоначальный подход.
источник