1. ホーム
  2. command-line

[解決済み] Unixで特定の拡張子で終わらないファイル名を見つけるには?

2022-04-02 09:08:47

質問

ディレクトリ階層で ではなく 拡張子のリストで終わるか?例:*.dllや*.exeでないすべてのファイル

UNIX/GNUのfindは、強力なものであるが、そのようなものはないようだ。 exclude というものを正規表現で探すのは難しいと感じていました。 しない は特定の表現にマッチします。

私はWindows環境( GnuWin32 の移植版)なので、Windowsオンリーのソリューションにも同様にオープンです。

解決方法は?

または ( とエスケープする必要があります。

find . -not -name "*.exe" -not -name "*.dll"

また、ディレクトリのリストを除外するために

find . -not -name "*.exe" -not -name "*.dll" -not -type d

または正論理で;-)

find . -not -name "*.exe" -not -name "*.dll" -type f