=encoding euc-jp =head1 名前 File::Backup - 簡単なファイルのバックアップ & ローテーションの自動化 =head1 概要 use File::Backup; backup( from => '/source/path/to/backup/from', to => '/destination/path/to/backup/to', keep => 5, timeformat => 'YYMMDD_hhmmss', ); =head1 説明 このモジュールは自動的に元のファイルをロックをおこなう、 記録と圧縮(いわゆる"バックアップ")計画を実装します。 * 現在のところ、これはUnixパス文字列でのtarとgzipだけです。おそらく あなたのコンピュータでは、これで大丈夫でしょう...。クロス・プラットフォームの ファイルのバックアップはもうすぐ実装される予定です。 この新しいバージョンでの、本当に素晴らしい特徴は、tarとgzipの あなたのローカルなバージョンを見つけるためにCを利用することです。 さらにC流の自動的なファイルロックが実装されています。 とてもスゴいことの1つは、任意のタイムスタンプ・フォーマット文字列を 持ったC関数を与えることができるということです。 またtarに圧縮を適用するかどうかを指定することもできます。 これらのオプションの全ては下記のC関数のドキュメントのセクションで 詳しく説明されています。 =head1 エクスポートされる関数 =over 4 =item B %ARGUMENTS $backed_files = backup(%arguments); もっとも単純な形式では、この関数は入力を元ディレクトリ、出力先 ディレクトリとして受け取り、元ディレクトリのファイルの圧縮された アーカイブファイルを出力先ディレクトリに入れます。 元のパスをキーに、アーカイブファイルの名前を値にもつハッシュの リファレンスを返します。 * バックアップされたファイルのリストが実装されたあかつきには(Cを参照)、 これらのファイルがキーに、バックアップされた新しく、タイムスタンプが つけられたパス名が値となるでしょう。 この関数の引数を以下に示します。 =over 4 =item * debug => 0 | 1 冗長な処理を有効にします。デフォルトは0(オフ)です。 =item * from => $PATH バックアップするファイルの元ディレクトリ。与えられなければ、現在の ディレクトリが使われます。 =item * to => $PATH アーカイブが置かれるオプションの出力先ディレクトリ。もし与えられなければ 現在のディレクトリが使われます。 =item * keep => $NUMBER ディレクトリに保存するバックアップの最大数。 これを正の数をCに設定することにより、C個の最も新しい バックアップが保存されるようになります。これを負の数に設定すると すべてのバックアップを保存するようになります。デフォルトでは マジカルな数である7(一週間分のバックアップ)に設定されます。 =item * timeformat => $STRING バックアップファイルに付けられるときに使われる日付時刻の形式文字列。 このパラメータは、タイムスタンプをなくすために何も指定しなかったり、 C