ファイル名の先頭に表示されるゼロを除いて、ディレクトリ内のファイル名を探します。

ファイル名の先頭に表示されるゼロを除いて、ディレクトリ内のファイル名を探します。

「202.png、405.png、0052.png、04050.png、...」というファイルがあるディレクトリがあります。ファイル名の先頭に表示されるゼロを含まないファイル名を見つけるには、 find コマンドが必要です。たとえば、00504.pngというファイルがある場合、findコマンドにパラメータ504.pngを渡すと、ディレクトリ内のファイルの実際の名前である00504.pngファイル名が返されるはずです。

予想される出力コマンドは次のとおりです。

$ find . -name 504.png

元のファイル名00504.pngを返す必要があります。

ベストアンサー1

私が知る限り、このfindコマンドは-name単純なグローバル一致のみをサポートします。ただし、ゼロ文字以上の前に付いた一致を使用できます-regex504.png0

find . -regex '.*/0*504.png'

完全なパスマッチな.*/ので大手です。-regex


再帰検索が不要な場合、bashなどのシェルは次の表現を可能にする拡張globを提供できます。*(0)

printf '%s\n' *(0)504.png

使用しているシェルのマニュアルを確認してください。

おすすめ記事