「検索」を使用して実行可能ファイルのみを検索するには?

「検索」を使用して実行可能ファイルのみを検索するには?

locate gtagsという名前のすべてのファイルを見つけますgtags

実行可能ファイルのみが必要な場合はどうすればよいですか?これを行う方法はありますか?

ベストアンサー1

簡単なことではありません。あなたはそれを使用することができます

locate bash | while IFS= read -r line; do [[ -x "$line" ]] && echo $line; done

名前に含まれるすべての実行可能ファイルを見つけますbash。これはfindいくつかのファイルをチェックするだけで、ファイルシステム全体を使用するよりも高速です。


  • locate bash常に行うことを行います(一致するすべての項目を一覧表示)。
  • |(パイプ)は最初のコマンド()の出力を取得locateし、2番目のコマンド(行の残りの部分)に送信します。
  • ループはwhile ...; do ... doneパイプからlocate受信した各行を繰り返します。
  • read -r line入力行を読み、それをline(この場合はパス/ファイル名)という変数に保存します。
  • [[ -x "$line" ]]ファイルが$line実行可能かどうかをテストする
  • その場合、&& echo $lineウィジェットはそれを画面に印刷します。

おすすめ記事