私は最近Linuxツールのワークショップを開き、生徒にエラーが発生した場合は、コマンドのマニュアルページを参照するように言いました。
しかし、コマンド自体は、man
コマンドのマニュアルページを表示するためのメッセージを返さないことに気づきました。
ほとんどのコマンドは、オプションの使用--help
、ページの使用info
、指示の使用、またはエラーメッセージの印刷を提案します。
ユーザーにマニュアルページを参照するように求めるコマンドがない理由は何ですか?誤って使用されたときに最初に見なければならない場所はまさにそれではありませんか?
答え1
そこはいこれには客観的な理由があります。
--help
ユーティリティ自体(バイナリ実行可能ファイルまたはスクリプトの場合はスクリプト)に組み込まれているフラグ。
マニュアルページは、実行ファイル自体とは別にファイルシステムに保存されます。
マニュアルページが欠落している可能性がありますが、実行可能ファイル自体には引き続きアクセスできます。
ユーティリティ開発者としてユーザーにドキュメントリソースを案内するはいまたはいいえコード自体に情報を含めるよりも、システムに存在する方が合理的です。
それだけでなく実行可能ファイルのバージョンとマニュアルページのバージョンは一致していても一致しない場合があります。
たとえば、特定のバージョンのPostgresが特定のパッケージに付属している場合、他のバージョンのPostgresもシステムにインストールされる状況に直面しました。 man psql
情報が表示されます一つバージョンですが、実際に実行して得られるバージョンではありませんpsql
。フラグがないと、--help
マニュアルページによって特定のオプションが機能しない理由が混乱します。
答え2
エラー メッセージの提案がどのように表示されるかに関する統計がない可能性があるため、コメントによって異なります。
私が見た主な接続は、使用法メッセージ(おそらく1行以上)を印刷することです。おそらく誰かにマニュアルページを読むように言う必要がないからです。誰かにメッセージを読むように言うことは重複し--help
、情報ページを読むことはそれらの一部だけを推奨します。
私が開発するすべてのプログラムは、使用メッセージ(通常は複数行)を提供します。