我从postgres中获取了一个转储,它创建了一堆CSV,在一些巨大的文件中有单个(')和双(“)字符。
如何在linux中用\“和\'替换它们?
谢谢!
答案 0 :(得分:2)
您可以使用sed
:
sed "s/['\"]/\\\\&/g" <<< "abc'def',\"foo\",bar"
abc\'def\',\"foo\",bar
如果您想避免转义已转义的引号,请使用:
sed -E "s/(^|[^\\])(['\"])/\\1\\\\\\2/g" file