地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

【Perl】ファイルの末尾の改行が2つ以上なら1つにしなければ追加するワンライナー

perl -pi -e 'BEGIN{undef $/;} s/\n*\z/\n/' filename.txt
  • BEGIN{undef $/;}

ファイル全体を一つの文字列として扱う。特殊変数$/(入力レコードセパレータ)を未定義にする

  • s/\n*\z/\n/

ファイルの末尾にある0個以上の改行(\n*)を単一の改行(\n)に置換