質問

Perlスクリプトを書いており、ユーザーがコマンドラインで提供したオプションをチェックしている部品では、オプションの何が問題なのかを説明するエラーで終了したいと思います。この場合、このエラーメッセージに沿ってスタックトレースを使用する必要はありません。それでは、エラーメッセージで死ぬための最良の方法は何ですかが、スタックトレースやデバッグ情報はありませんか?

以下を試しました:

die "Invalid options";

生成します

Invalid options at myscript.pl line 49.

それから、私は試しました

use Carp;
...
croak "Invalid options";

生成します

Invalid options at myscript.pl line 47
    main::prepare_output_directory() called at myscript.pl line 546

それで、どうすれば私は一緒に死ぬことができますか Invalid options 何もありません?

ボーナスの質問:なぜそうです croak エラーは47行目であることを教えてください。 croak 49行目ですか?

役に立ちましたか?

解決

の最後に新しいラインを置くだけです die ストリング:

die "Invalid options\n";

これにより、エラーの場所がメッセージに追加されなくなります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top