我目前在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