我正在尝试在文件的第一行文本之前插入换行符。到目前为止我找到的唯一解决方案是:
sed -e '1 i
')
我不喜欢在我的shell脚本中有一个实际的换行符。可以使用标准(GNU)UNIX实用程序以任何其他方式解决这个问题吗?
答案 0 :(得分:3)
这是一个没有特定shell要求的纯sed解决方案:
sed -e '1 s|^|\n|'
编辑:
请注意,必须至少有一行输入(以及使用行地址的其他任何内容)才能正常工作。
答案 1 :(得分:3)
对于多样性:
echo | cat - file
答案 2 :(得分:2)
单引号字符串之前的$
将导致bash解释其中的转义序列。
sed -e '1 i'$'\n'
答案 3 :(得分:1)
你可以使用awk:
$ awk 'FNR==1{print ""} 1' file
哪个适用于任意数量的文件。