検索を使用したmd5ベースのファイルの一致

検索を使用したmd5ベースのファイルの一致

私のディレクトリにjsとcssファイルがたくさんあります。その中には、内容のmd5()に基づいて名前が付けられていますf10521a21bb013cb81e0909809818ad6.js。このファイルを一致させるためにfindを使用したいと思います。 0つの結果が返されるのはなぜですか?

find -regex "^[A-f0-9]{32}\.(?:js|css)$"

ベストアンサー1

  • 正規表現はファイル名だけでなくパスとも一致するため、文字列の先頭に固定しないでください。
  • デフォルトのemacs型正規表現はギャップが好きではないようです。他のものを選択してください。
  • 他の正規表現型のどれも非キャプチャグループが好きではないようです。

GNUを使用すると仮定すると、次のことが機能しますfind

find . -regextype posix-awk -regex ".*/[a-f0-9]{32}\.(js|css)$"

find . -regextype posix-basic -regex ".*/[a-f0-9]\{32\}\.\(js\|css\)$"

find . -regextype posix-egrep -regex ".*/[a-f0-9]{32}\.(js|css)$"

find . -regextype posix-extended -regex "/[a-f0-9]{32}\.(js|css)$"

おすすめ記事