2013-05-16 74 views
2

我有以下腳本從文件中刪除許可證區域, 但我在開頭處留有空行。需要perl一個內存來刪除文件開始處的空白行

perl -pi~ -ne 'if (/#region License/../#endregion/) {$_ = "" if ($. == 1 || $. == 2)}' $i 
+0

如果您還提供'-p'開關,'-n'開關將被忽略。 – mob

+0

你的文件是什麼樣的?你寫的東西會消除兩個標記之間的連線,如果它們碰巧在文件的第一行或第二行。 – Borodin

回答

4
perl -i~ -ne' 
    next if /#region License/../#endregion/; 
    next if !$body && /^\s+\z/; 
    ++$body; 
    print; 
' "$i" 

隨意刪除換行符,雖然會與他們合作。他們在那裏爲了可讀性。

+0

+1可讀性換行符。還有,答案。 – timss

+0

謝謝!我需要運行兩次才能擺脫空白行。 – Jacko

+0

是的。我仍然很高興,因爲第二次修復它。我在Windows上運行Git shell中的perl,所以它可能會有怪癖。再次感謝! – Jacko

相關問題