从包含非ascii字符的文件中删除所有行

时间:2014-07-23 18:56:47

标签: perl ascii

我有一个包含数千行的文件。我想在每一行中搜索非ascii字符,如果找到,则删除整行。

我在perl中找到了这段代码:

perl -i.bak -ne 'print unless(/[^[:ascii:]]/)' file

但是当我使用我的文件运行它时出现此错误:

Can't find string terminator "'" anywhere before EOF at -e line 1.

有没有人有实际perl脚本的代码而不是像上面这样的一个内容?

1 个答案:

答案 0 :(得分:3)

这是一个shell错误,很可能是因为你在Windows机器上。

使用双引号而不是单引号:

perl -i.bak -ne "print unless(/[^[:ascii:]]/)" file