私が見ているマニュアルページが正しいかどうかはどうすればわかりますか?

私が見ているマニュアルページが正しいかどうかはどうすればわかりますか?

例えば、

[fakename]$ type echo
echo is a shell builtin

しかし、man echo私はGNU coreutilsのバージョンを受け取りましたecho。私が見ているマニュアルページが正しいかどうか(つまり、直接呼び出すことで取得できるユーティリティ)を知る最も簡単な方法は何ですか?

答え1

あなたは本当に知りません。マニュアルページ以上の知識がなければ。

echo(and printf、and、...)の場合、通常はtestシェルが組み込まれているので、それを知ってシェルのドキュメントを読む必要があります。 (そしてecho実装ごとに異なることが知られています。printf代わりに使用.)

ほとんどの(すべてではありませんが)シェルでは、たとえばwill printを使用して何かが組み込まれていることを確認できます。 (type commandtype echoecho is a shell builtintypePOSIXで指定しかし、例えばPOSIXyではありませんが、サポートされています。 )Bashでは、次のように読み取ることができますman bashオンライン文書、または使用組み込みコマンドhelp(これはBashに固有のものであり、これが存在することを知る必要があります)。

命令があってもいいえ組み込みコマンドには、同じ名前の複数のコマンドがあります。renameこれが有名な例です(参照:Debian / Ubuntuの名前変更ユーティリティがCentOSなどの他のディストリビューションの名前変更ユーティリティと異なるのはなぜですか?)。オペレーティングシステムには、Debianなどの実際にインストールされているユーティリティの正しいマニュアルページが必要です。「代替」システムコマンド置換が変更されると、対応するマニュアルページも更新されます。しかし、もしあなたが読むならオンラインマニュアルページ、この点を知っておく必要があります。

--version多くのユーティリティには、コマンドがどの実装であるかを示すコマンドラインオプションがあります。 (ただし、ほとんどすべてのユーティリティにこの機能があるわけではありません。もともとはGNUismだったと思いますので、GNUユーティリティとカスタムコピーに発生したユーティリティにはこの機能があります。rename

debian$ rename --version
/usr/bin/rename using File::Rename version 0.20
centos$ rename --version
rename (util-linux-ng 2.17.2)

これに加えて、システムには、ユーティリティの動作を変更するためによく使用されるユーティリティと同じ名前のエイリアスまたは機能があります。この場合、マニュアルページに提供されているデフォルト値が適用されない場合があります。のエイリアスは、またはに追加されたlsエイリアスと同様に一般的です。しかし、エイリアスなのか関数なのかを教えてくれます。-irmmvtype foofoo

答え2

組み込みコマンドのマニュアルが必要な場合は、シェルマニュアルを見てください。コマンドは他のすべての組み込みコマンドとともに文書化されます(または、少なくとも組み込みコマンド文書がある場所への参照が提供されます)。

  • bashman bashまたはhelp echoインタラクティブシェルからbash
  • zsh:(man zshしばらく読んだ後、man zshbuiltin
  • fish:(man fishしばらく読んだ後、help echo

あなたが得るman echo文書マニュアル/bin/echo外部 echo注文する。このコマンドは、echo明示的なパスなしで使用する場合は使用されません。

答え3

フルパス(を使用して取得できます)を提供することで、which echoビシェルビルドを呼び出すことができるはずです。シェルの内部には別のマニュアルページはありません。これらの事項に関するドキュメントを表示するには、シェルのマニュアルページを探す必要があります。上記の「type」コマンドは、何を得るかを決定するための最良の方法です。

答え4

man次の部分に分けられます。

  1. 一般的な部分
  2. システムコール
  3. ライブラリ機能
  4. ファイル形式
  5. ゲームとスクリーンセーバー
  6. 様々な種類
  7. システム管理

探している内容によっては、man混乱を避けるために次のように呼び出すことができますman section command

より多くの情報を見るために実際に使用することができます。man man

関連情報