回答:
パスにある場合は、type git
またはのいずれかを実行できますwhich git
。which
コマンドは、問題の正しいパス(環境とドットファイル間の混乱を)取得がありました。の場合type
、-p
引数でパスのみを取得できます。
パスにない場合は、locate -b git
「git」という名前のすべてのものを見つけるためにそれを探すのが最善です。それは長いリストになるので、で修飾するのが良いかもしれませんlocate -b git | fgrep -w bin
。
locate
無限に使用しています(非常に高速です)が、それを知らない人にとってlocate
は、Ubuntuで毎日自動的に実行される最新のデータベース更新と同じくらい最新です。リフレッシュコマンドがあるsudo updatedb
...またlocate
、このようなコマンドが動作するので、組み込まれている正規表現機能:locate -br "^git$"
... -b`手段がちょうど検索を制限ベース名 ...またはなしで-b
、それは完全なパス名を検索します。..また、 、検索するように設定したパスのみを検索します。正規表現フィルタ以外のコマンドライン制御はありません。
type
エイリアスなどを教えてくれるシェルビルトインでありwhich
、実行可能ファイルへのパスを表示する外部プログラムです...その実行可能ファイルが呼び出されない方法。
which
は、シェルのビルトインと関数(コマンドを入力するとどうなるのか迷っている場合に関係します)を知らないことと$PATH
、一部のシステムで異なる方法を使用することです。
ここでの他の答えは、あなたが使用することを起こるので、もし、大部分のLinuxの最近のバージョンに向けているように見えるgit
必要はありませんOS上でlocate
、whereis
、which
、またはapropos
古いスタンバイが常にある、(などのSolaris、HP-UX、など)find
。
find / -name git
上記のシステムのいくつかの古いバージョンでは、に-print
オプションを提供する必要がありますfind
。
find / -name git -print
また、を使用する場合はlocate
、updatedb
定期的に実行してください。(locate.updatedb
一部のBSD派生物)
type
。:)それは間違いなくレパートリーに入っています!
find
あなたがそれをルートするところから始めて、ファイルシステムの完全な深さ優先検索を行うことは、おそらく指摘する価値があります。だから、find / -name git
あなたのシステム全体を横断します。あなたのプログラムがあなたのパス上にあることを知っていれば通常できIFS=":"; path=$PATH; set $path; for dir in $path; do find $dir -name git; done
ますが、UnixファイルシステムはあなたのPATH
。
PATH
、正しいことは(前と同じ注意事項で)ですIFS=":"; for dir in $PATH; do find "$dir" -name git; done
。また、繰り返しに、この答えはのみへのアクセスを持っていない人々によって使用されるべきtype
か、which
または locate
、すなわち、ほとんど誰も。@Arcegeの答えは正しいです。
whereis
またはを使用して、インストール済みプログラムへのパスを取得しますwhich
。名前がわからなくなった場合apropos
は、ユーティリティの同義語または説明で使用できます(例:apropos "version control"
find)git
。それに続いて、もちろんwhatis
プログラムの機能を簡単に要約するコマンドがあります。ただし、これはシステム上のすべてのプログラムと機能に適用されるわけではありません。たとえば、試してみてくださいwhatis "the meaning of life, universe and everything"
。
which
コマンド」は確かに:)