我有一个 json 文件,并尝试\r
使用删除字符sed
,但没有得到任何输出。
这是文档
{"dom":"fff.dd",[{"em":"[email protected]\r"}]}
{"dom":"fff.dd",[{"em":"[email protected]"},{"em":"[email protected]\r"}]}
sed
我使用的命令是:
sed 's/\r//' input.json
没有错误,我得到的输出是原始文件,其中的字符\r
仍然存在,就好像没有对文件执行任何操作一样。
如果我在使用该命令时哪里错了,请告诉我,以及正确的方法是什么。
答案1
你只需要另一个反斜杠:
sed 's/\\r//' input.json
这是因为sed
解释\r
为换行符(字符\U0E
),但解释\\r
为反斜杠和小写 r(两个字符\U5C\U72
)。