ディレクトリ内のすべてのバイナリ実行可能ファイルを再帰的に見つける方法は?

ディレクトリ内のすべてのバイナリ実行可能ファイルを再帰的に見つける方法は?

find次のコマンドを使用する場合:

find /mydir/mysubdir -executable -type f

すべての実行可能ファイル(ディレクトリを除く)を一覧表示し、実行可能なスクリプトファイル(script.shなど)を含めます。私が望むのは、バイナリ実行可能ファイルをリストすることだけです。

ベストアンサー1

このfileユーティリティを試してみてください。マニュアルページによると:

マジックテストは、特定の固定形式データを含むファイルを確認するために使用されます。一般的な例には、バイナリ実行可能ファイル(コンパイラ)a.outファイルがあり、その形式は標準インクルードディレクトリで定義されています。

正規表現を使用する必要があるかもしれませんが、

$ find -type f -executable -exec file -i '{}' \; | grep 'x-executable; charset=binary'

ファイルには多くのオプションがあるので、マニュアルページをよく見ることをお勧めします。私はgrep出力を簡単に出力するように見える最初のオプションを使用しました。

おすすめ記事