type
触れながら命令を出しているwhich
うちに奇妙な点を発見しました。
type
パスを返すか、コマンドが Bash 組み込みであることを示します。
which
組み込みコマンドの場合、パスは返されません。何も返されませんexit
。type
奇妙なことに、期待type echo
どおりにechoが組み込まれています。
ただし、which echo
echo実行可能ファイルのパスとして/ bin / echoを使用してください。これは他の組み込みコマンドでは発生しないようです。
Bashがスクリプトとコマンドラインで実行することを選択した2つの違いは何ですか、そしてこれら2つのエコーの後に隠された物語が何であるかを知りたいです。
私のシステムはUbuntu Desktop 12.04です。
答え1
組み込み関数echo
とコマンドがありますecho
。type -a echo
すべて見るためです。
独自に組み込まれたシェルなので、type
他の組み込みについても知っています。
そしてちょうどwhich
一般的なコマンドです。そのため、どのシェルを使用しているのかわからず、ディスク上のコマンドのみを通知します。
通常、type
シェルに特定の単語を入力すると、何が起こるかを知らせるのが正しいコマンドです。