FreeBSDの「どこ」と「検索」

FreeBSDの「どこ」と「検索」

したがって、このwhereコマンドはシェル組み込みであるため、より速く実行され、実行可能ファイルのみを検索します。しかし、whereコマンド間に異なる違いはありますかfind

答え1

彼らは非常に異なる獣です。where fooin tcsh(また、in)は、シェルの組み込みとキーワード、エイリアス、およびクエリを介して見つかった実行可能ファイル(配列にマップされている)の場所(またはより正確にはシェルが知っている他のコマンド)をzsh示します。さまざまな基準に基づいてファイルを検索する非常に強力なコマンドです。foo$pathfoo$PATH$pathfind

例えば、

find /usr/local -type f -mtime -30 -atime +7 \( -user bob -o -user karen \) -perm -001 -exec chmod -x {} \;

/usr/localそこで、通常のファイル(ディレクトリなどではありません)であり、過去30日間に変更されましたが、先週アクセスされていない、またはに属し、bobkarenのファイルで実行可能なすべてのファイルを見つけます。その後、chmodこれらのファイルがあります。

答え2

注: find(1) にやや似た find(1) コマンドもあります。このコマンドは、$ PATHにあるファイルだけでなく(つまり、$ PATHファイルにあるファイルだけでなく)、すべての種類のファイルを検索します。実行可能なコマンド") - しかし、定期的なインデックス再構築を使用するので、非常に高速です。

関連情報