我使用以下命令来替换非 ASCII 字符、单引号和不可打印字符:
sed -i -e "s/'//g" -e's/'//g' -e's/[\d128-\d255]//g' -e's/\x0//g' filename
但是,我收到错误:
sed: -e expression #3, char 18: Invalid collation character
我怎样才能替换这些字符?
答案1
试试这样:
LANG=iso-8859-1 sed -i -e"s/'//g" -e's/'//g' -e's/[\d128-\d255]//g' -e's/\x0//g'
或者您可能会发现这很有用(将替换不可打印的单引号):
sed -i 's/[^[:print:]]//;s/'\''//g;s/'//g' filename