bash - 用 sed 替换由换行符分隔的花括号

标签 bash sed

我需要更换这个

    },   <-here there is a \n
    {

}{

无所谓\n

我已经试过了:

sed "s/},\n{/}{/g" 

但不起作用。

我尝试过其他奇怪的解决方案,但效果不佳,因为在文件中还有很多以 { 开头的行。

您能提出一些解决方案吗?

最佳答案

sed解决方案:

示例 test.txt 文件:

afa
asdasd
},
{
sdfasd
},
{

sed '/},$/{ N; s/,\n{/{/; }' test.txt

输出:

afa
asdasd
}{
sdfasd
}{

关于bash - 用 sed 替换由换行符分隔的花括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49056072/

相关文章:

php - Docker+Laravel 安装

arrays - 从句子中删除逗号分隔的单词列表

linux - 使用 sed 或 awk 在分号之间显示单词

awk - 如何仅显示匹配行之后的下一行?

linux - 需要帮助在 shell 脚本中查找 PID

json - 使用 sed 或 awk 查找并替换 JSON

bash - 使用 Ansible 将二进制文件添加到 PATH

bash - 如何在两列中分别打印两个函数的输出 - Bash 脚本

bash - 如何在每一行前添加一个用 awk 找到的模式实例

Linux bash : Multiple variable assignment