回答:
パスにある場合は、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コマンド」は確かに:)