我正在运行SQL程序,我收到此错误
CONTEXT: COPY qc_v1_ships_1854, line 6383 at load_QC_tables.pl line 86.
DBD::Pg::db do failed: ERROR: invalid byte sequence for encoding "UTF8": 0x00
当我查看我尝试上传到数据库的文件时,有问题的行有一个<nul>
字符
465490013905000000 | NIGHTING_2_SAM<nul> | 5 | 3 | -1 | 1
我认为是问题所在。但是当我跑步时
sed -i 's/\0x00/ /g' *.dat
没什么变化的。有什么帮助吗?
由于
答案 0 :(得分:2)
在sed
正则表达式模式中,\0
仅为0
。你想要
sed -i 's/\x00/ /g' *.dat
或者既然你已经在使用Perl,那么Perl等价物就是
perl -i -pe's/\x00/ /g' *.dat
更快:
perl -i -pe'tr/\x00/ /' *.dat