将“[”替换为[使用sed

时间:2017-10-25 18:47:26

标签: sed windows-shell

我正在尝试使用以下输入更正文件的某些错误:

"[""test""]"

我想得到这个输出:

["teste"]

我已经尝试过以下命令:

sed -i s/"["/[/g *.csv
sed -i s/"]"/]/g *.csv

我收到此错误消息:

  

sed:-e expressou-me#1,character 7:命令's'umfinished(s /// - mísseisdeimimitator)

有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:0)

你必须逃避[,因为它代表POSIX BRE中的the bracket expression开放。如果首先出现,则结束括号]可以保持未转义状态(参见上面引用的标准中的第1点)。

sed -i 's/"\["/[/g; s/"]"/]/g' file

答案 1 :(得分:0)

你可以尝试这个

sed 's/"//g;s/[a-z]\{1,\}/\"&e"/'