如何从仅以字符串“///”开头的行的末尾删除字符串“\n”(不是换行符)?谢谢。
输入示例:
Some text\n
/// Some comment\n
期望的输出:
Some text\n
/// Some comment
我尝试过使用
sed -i 's/\\n*$//' $1
但是,它会删除所有尾随的“\n”字符串。
答案1
在前面添加正则表达式地址说明符 - 由于您的模式有正斜杠,因此如果您使用不同的表达式分隔符会更清晰:
sed -i '\%^///% s/\\n$//' Input
测试:
$ sed '\%^///% s/\\n$//' Input
Some text\n
/// Some comment
如果您更喜欢“倾斜牙签”
sed -i '/^\/\/\// s/\\n$//' Input