web-dev-qa-db-ja.com

.jpegを.jpgに一括で名前変更

以下のような複雑なフォルダ構造に100,000を超える画像があります。

├── folder1
│   ├── 0001.jpeg
│   └── 0002.jpeg
├── folder2
│   ├── 0001.jpeg
│   └── 0002.jpeg
├── folder3
│    └── folder4
│         ├── 0001.jpeg
│         └── 0002.jpeg
└── folder5
     └── folder6
           └── folder7
                ├── 0001.jpeg
                └── 0002.jpeg   

フォルダー構造を変更しないで保持したいが、各.jpegファイルの名前を.jpgファイル(.jpeg->。jpg)に変更したい

私のダウンストリームコマンドには.jpgファイルが必要で、そのコードを変更して.jpegファイルを単純に処理することはできませんでした。

8
Andrew Brown
  1. ターミナルを開きます。

  2. cdコマンドを使用して、ディレクトリをfolder1の親ディレクトリに変更します。

    cd /path/to/parent/directory/of/folder1/
    
  3. このコマンドを実行して、拡張子が.jpegのすべてのファイルの名前を.jpgに変更します。

    find . -type f -name '*.jpeg' -print0 | xargs -0 rename 's/\.jpeg/\.jpg/'
    

上記のコマンドは、DebianベースのオペレーティングシステムにデフォルトでインストールされるPerl renameプログラムを使用します。他の一部のLinuxディストリビューションでは、同じPerl名前変更プログラムがprenameと呼ばれています。 prenameは、次の指示に従ってインストールできます。 組み込みのrenameの代わりにPerl renameユーティリティを取得

8
karel