我目前在WinXP上运行Strawberry Perl,我正在尝试处理一个unix格式的平面文件。平面文件使用换行符来分隔字段,并使用供稿字符来分隔记录。我试图将FF转换为其他任何东西(CRLF,';',TAB等)。我曾尝试使用下面的Perl的俏皮话,但没有成功尝试:为什么Strawberry Perl不能删除这些换页字符?
perl -p -e 's/\f/\r\n/g' <unix.txt> dos.txt
perl -p -e 's/\x0c/\x0d\x0a/g' <unix.txt> dos.txt
perl -p -e 's/\f/\t/g' <unix.txt> dos.txt
我发现的唯一的事情是,在dos.txt所有的LF字符结束转换为CRLF,但FF字符依然存在。我甚至试图重新处理dos.txt文件,再次尝试替换FF,但仍然没有骰子。我仍然是一个perl新手,所以也许我错过了一些东西?有谁知道为什么上述命令不能做我想让他们做的事情?
这可能是我的问题的重要组成部分。我只是试着用双引号,而s ///命令实际上取代了FF字符!然而,它仍然不能满足我需要的功能,我认为外星生命形式的使用binmode()的建议可能是解决方案的其他部分。 – 2012-02-01 18:39:43