11

あらゆる種類の外部コマンドと、失敗する可能性のあるさまざまなファイルシステム コマンドを実行するコードを書いています。

or die失敗する可能性のあるものに追加する手間を省けるモジュールはありますか?

次の代わりに何かでラップできるようにしたいと思います。

mkdir $dirname or die "can't create directory $dirname";

system("some external command") or die "can run some external command";

私は得る:

some_wrapper_code {
    mkdir $dirname;

    system("some external command");
}

mkdir失敗した場合は で失敗したことがわかり、失敗したmkdir場合systemは で失敗したことがわかりますsystem

4

1 に答える 1

32

うん。autodieCPAN からチェックアウトします。

ドキュメントから:

プラグマは、通常は失敗時に false を返す関数を、失敗時に例外をスローする同等の関数autodieに置き換える便利な方法を提供します。

autodieプラグマにはレキシカル スコープがあります。つまり、 で変更された関数とサブルーチン autodieは、囲んでいるブロック、ファイル、または eval.

于 2009-09-16T10:41:04.453 に答える