1

Поэтому я пытаюсь написать сценарий, который достигает следующего:

  1. Читает UID файла из текстового файла
  2. Ищет местоположение файла на основе UID
  3. Копирует файл, включая его структуру пути, в новое место.

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

В настоящее время мой подход заключается в следующем:

  • Пока цикл до конца файла с UID
  • Найти соответствующий путь медиа на основе UID
  • Выходной путь к временному файлу, поскольку структура медиа-каталога имеет значение, пример структуры пути '../Medias/Shirts/shirtA.jpg ',' ../Medias/Shirts/shirtA_1.jpg ', или' ../Medias/Pants/pantsA.jpg»
  • Используйте временный файл, чтобы скопировать медиа в новое место, например, 'cp $ MEDIAPATH/$ UID * $ TARGET'

Итак, у меня есть два вопроса:

  1. Есть много медиа-элементов, я использую find и dirname, и я тестирую некоторые образцы данных меньшего размера, я уверен, что есть более эффективный способ сделать это, чем мой? FILEDIR="$(dirname "$(find ${MEDIADIR} -name "$UID" )")"
  2. Теперь, когда я копирую носитель в новое место, я не уверен, как это сделать, потому что меня не интересует весь путь, т. Е. Путь для элемента мультимедиа может быть '/home/user/media/pants/pantsA.jpg 'в то время как мне нужен только / брюки /, потому что при копировании я хочу сохранить эту структуру, то есть' ../targetDIR/pants/ 'и т. д.?

0