4

У меня более 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 не увенчалась успехом.

1 ответ1

5
  1. Откройте терминал.

  2. Перейдите в родительский каталог folder1, используя команду cd .

    cd /path/to/parent/directory/of/folder1/
    
  3. Запустите эту команду, чтобы переименовать все файлы с расширением .jpeg на .jpg.

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

Приведенная выше команда использует программу rename Perl, которая устанавливается по умолчанию в операционных системах на основе Debian. В некоторых других дистрибутивах Linux та же самая программа переименования Perl называется prename. Предварительное имя можно установить, следуя инструкциям из: Получите утилиту переименования Perl вместо встроенного переименования.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .