Bash 使用sed替换花括号

Bash 使用sed替换花括号,bash,sed,Bash,Sed,我正在解析一些json数据,需要删除开头和结尾的大括号,{}。我正在使用sed来执行这个操作,但从我所知道的情况来看,花括号在sed中执行特殊功能,而转义它们似乎不起作用。下面是我尝试过的几个例子。我真的可以使用一个有效的正则表达式。提前谢谢 我试过的第一件事不起作用 sed 's/\{\}//g' 我在这里找到的答案中的一些重做代码 sed 's/\(\{\|\}\)//g' 我将使用tr: tr -d '{}' < file.json [{}]是一个表示{或}的字符类 如果要就地

我正在解析一些json数据,需要删除开头和结尾的大括号,{}。我正在使用sed来执行这个操作,但从我所知道的情况来看,花括号在sed中执行特殊功能,而转义它们似乎不起作用。下面是我尝试过的几个例子。我真的可以使用一个有效的正则表达式。提前谢谢

我试过的第一件事不起作用

sed 's/\{\}//g'
我在这里找到的答案中的一些重做代码

sed 's/\(\{\|\}\)//g'
我将使用tr:

tr -d '{}' < file.json
[{}]是一个表示{或}的字符类

如果要就地更改文件,请将-i选项传递到sed或使用中的工具。我喜欢它,因为它是通用的,这意味着它将与任何命令一起工作,无论它是否支持就地编辑:

sed 's/[{}]//g' file.json | sponge file.json
我将使用tr:

tr -d '{}' < file.json
[{}]是一个表示{或}的字符类

如果要就地更改文件,请将-i选项传递到sed或使用中的工具。我喜欢它,因为它是通用的,这意味着它将与任何命令一起工作,无论它是否支持就地编辑:

sed 's/[{}]//g' file.json | sponge file.json

您是要删除所有{和}还是字符串{}?为了清晰起见,最好包含示例输入和所需输出。@Levlevsky我将从数据中的各个点分别删除它们。大括号之间通常没有空格,如果这很重要的话,大括号前面也没有空格。您是要删除所有的{和}还是字符串{}?为了清晰起见,最好包含示例输入和所需输出。@Levlevsky我将从数据中的各个点分别删除它们。如果这很重要的话,大括号和大括号之前的东西之间通常没有空间。它起作用了!谢谢出于好奇,删除大括号的语法是什么?它是sed的//[[]]//g':@hek2mgl好东西,现在我的数据正是我想要的。酷,还请检查我的更新!实际上这是tr的工作!成功了!谢谢出于好奇,删除大括号的语法是什么?它是sed的//[[]]//g':@hek2mgl好东西,现在我的数据正是我想要的。酷,还请检查我的更新!实际上这是tr的工作!