Как скопировать и переименовать файлы с тем же именем

У меня есть структура каталогов, которая содержит ряд файлов, которые названы так же, как в:
из dir1/тест
директория dir2/тест
dir3/тест
Я хочу найти каждый тестовый файл и скопировать его в другой каталог с уникальным (произвольным) именем файла, чтобы я мог проанализировать данные, которые они содержат.
Там может быть большое количество этих одноименных файлов содержится несколько слоев глубоко в структуре каталогов. Я могу использовать find для поиска файлов, но переименование (с помощью find) намекает на меня.
Может ли кто-нибудь предоставить рекомендации по этому вопросу?

13
задан Charles
03.12.2022 7:53 Количество просмотров материала 3178
Распечатать страницу

2 ответа

  • source_dir является корневой каталог формы, где вы хотите, чтобы искать файлы.
  • destination_dir - это каталог, где вы хотите скопировать или переместить файлы
  • *.doc - это имя файла или шаблон файла для поиска.

вы можете скопировать файлы со следующей командой! обратите внимание, что --backup=numbered создаст численно увеличенный суффикс, если файл с таким именем уже в каталоге назначения.

find /source_dir -type f -name *.doc | xargs -I '{}' cp --backup=numbered {} /destination_dir

вы можете движение файлы со следующей командой! обратите внимание, что --backup=t создаст численно увеличенный суффикс, если файл с таким именем уже находится в каталоге назначения.

find /source_dir -type f -name *.doc | xargs -I '{}' mv --backup=t {} /destination_dir

вы также можете использовать эти команды с sudo если вы могли бы иметь в поиске назначения соответствующие файлы, принадлежащие другому пользователю.

если вы хотите подробный вывод этих команд добавить в после --backup=numbered или --backup=t.

1
отвечен M.Kungla 2022-12-04 15:41

вы можете заменить в пути с другого персонажа и использовать его в качестве нового имени файла:

#!/bin/bash
for f in /dir*/*
do
    cp "$f" "${f//\//.}"
done
0
отвечен Mark 2022-12-04 17:58

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх