Подтвердить что ты не робот

Как использовать замену новой строки в BSD sed?

Привет, как мне выполнить следующее в BSD sed?

sed 's/ /\n/g'

На man-странице указано, что \n будет обрабатываться буквально в заменяющей строке, как мне избежать этого поведения? Есть ли альтернатива?

Я использую Mac OS Snow Leopard, я могу установить fink для получения GNU sed.

4b9b3361

Ответ 1

В оболочке вы можете:

    sed 's/ /\
/g'

нажмите клавишу ввода после обратной косой черты, чтобы вставить новую строку.

Ответ 2

Другой способ:

sed -e 's/ /\'$'\n/g'

Смотрите здесь.

Ответ 3

Для удобства использования я лично часто использую

cr="\n" 
# or (depending version and OS)
cr="
"

sed "s/ /\\${cr}/g"

поэтому он остается на 1 строке.