2010年6月28日 星期一

Perl 取代並寫回目標檔案內容

取代前 target.txt 內容

123abc
456abc


執行

perl -pi -e 's/abc$//g' target.txt


取代後 target.txt 內容

123
456





取代前 code.txt 內容

function abc()
{
echo('abc');
}

function def(){ echo('def'); }


執行

perl -pi -e 's/^(function )([a-z])/$1.uc($2)/eg' code.txt


取代後 code.txt 內容

function Abc()
{
echo('abc');
}

function Def(){ echo('def'); }



備註:
-p 是單行比對模式。
若需要多行比對,請增加 -0777 參數,此參數的意義為「將讀取分隔符號從 \n 變成 undef」,等同於等個檔案內容一次讀入做處理。多行比對同時需要加上 s 修飾字。


0 意見: