我想修改一个文本文件,使得任何以“Length:”开头的行都被附加到前面的一行。
我知道
在谷歌上搜索“如何在sed中匹配换行符”确实找到了一种复杂的sed方法,可以将模式与下一行连接起来,但我无法弄清楚如何适应它。
希望能得到帮助。
我知道
sed '/\nLength:/ Length:/'
不起作用,因为sed
是基于行的。在谷歌上搜索“如何在sed中匹配换行符”确实找到了一种复杂的sed方法,可以将模式与下一行连接起来,但我无法弄清楚如何适应它。
希望能得到帮助。
printf "\n"
改为print ""
(但这只是一种风格问题)。然而,你应该使用printf
的格式说明符,比如printf "%s", $0
,以避免行中的字符被解释。 - Tom Fenechprintf
不是一个函数,所以你不需要括号(实际上有些人更喜欢避免使用它们)。除此之外,看起来很好! - Tom Fenech