2013-07-24 57 views
1

我試圖解析一個輸入文件只有Unix LF到輸出文件。之間是這個問題的一些不相關的正則表達式替換。Perl打開圖層關閉CRLF翻譯?

perl -Mopen=IO,:raw -pe "SomeRegexReplacement" %INPUT% >%OUTPUT%

http://perldoc.perl.org/functions/binmode.html: 像Perl自動添加CR換行,這是我不想,我試圖禁用它

如果層被省略或指定爲:原料的文件句柄是適合傳遞二進制數據的 。這包括關閉可能的 CRLF翻譯並將其標記爲字節(與Unicode 字符相反)。

但是:結果文件仍然包含CRLF換行符。 爲什麼?

+0

我覺得這是累人。 – innaM

回答

1

您沒有申請:原始到標準輸出。更改

-Mopen=IO,:raw 

-Mopen=:std,:raw 
+0

我使用'IO'作爲perl給了我一個錯誤,否則:'未知的PerlIO層類'std'(需要IN,OUT或IO)在-e行0.「 – membersound

+0

然後你離開':' – ysth