无论如何在2个特定字符集之间插入新行?我希望每次}{在文本文件中插入一个新行,但是我希望在2个大括号之间插入这一新行.例如}\n{
你可以跑
sed -i -e's /} {/} \n {/ g'filename.ext
哪里
sed 是你的流编辑器程序 -i是适当编辑文件的选项filename.ext -e 表示正则表达式 s/}{/}\n{/g是正则表达式意味着在每一行中查找} {的所有(g)实例并将其替换为} \n {其中是新行的正则表达式.如果省略,它将仅替换第一次出现的搜索模式,但仍然在每一行中.\ng要在更改文件之前进行测试,请省略该-i选项,它将在STDOUT中打印结果.
例:
创建文件:
echo "First }{ Last" > repltest.txt
Run Code Online (Sandbox Code Playgroud)
跑
sed -e 's/}{/}\n{/g' repltest.txt
Run Code Online (Sandbox Code Playgroud)
将以下内容打印到STDOUT:
First }
{ Last
Run Code Online (Sandbox Code Playgroud)
要在同一文件中进行更改,请使用-i选项.
要对STDIN而不是文件运行此-i命令,请在输出STDIN的东西后省略和管道命令中的文件名,例如:
cat repltest.txt | sed -e 's/}{/}\n{/g'
Run Code Online (Sandbox Code Playgroud)
与...相同 sed -e 's/}{/}\n{/g' repltest.txt
| 归档时间: |
|
| 查看次数: |
773 次 |
| 最近记录: |