我已经在Linux Box中使用了以下sed命令。但在solaris box中,情况并非如此。请纠正我问题是什么?
a=`sed ':a;N;$!ba;s/\n/ /g' file.txt`
投掷,
-bash-3.00$ a=`sed ':a;N;$!ba;s/\n/ /g' file.txt`
Label too long: :a;N;$!ba;s/\n/ /g
最佳答案
当sed
打开solaris
时,您将不得不这样分解它:
sed -e ':a' -e 'N;$!ba' -e 's/\n/ /g' file.txt
根据
man
页:b label Branch to the : command bearing the label.
If label is empty, branch to the end of
the script. Labels are recognized unique
up to eight characters.
因为它们最多可以识别8个字符,如果您的标签短于您需要在多个表达式中拆分
sed
。关于linux - sed命令替换换行符在solaris中不起作用,但在linux中起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22189809/