Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Работа с файлами  (Прочитано 1383 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн firststart

  • Автор темы
  • Участник
  • *
  • Сообщений: 105
    • Просмотр профиля
Работа с файлами
« : 27 Сентября 2021, 10:47:08 »
Есть папка "Фото" с множеством вложенных папок и файлов.
Грубо говоря отсортированые фотографии по смыслу, типа:

    Фото/Фото по даче/Ландшафтный дизайн/Газон/110215.jpg и так далее.

Есть папка "Сомнительно", куда свалены фото в кучу. У меня есть подозрение, что некоторые файлы из "Сомнительно" отсутствуют в папке "Фото".

Как бы мне выяснить, какие файлы из папки "Сомнительно" отсутствуют в папке "Фото" и эти файлы переместить в отдельную папку "Отсутствующие" для последующей сортировки уже вручную....?

Т.е. надо получить список всех файлов, что есть в папке "Фото" и каждый файл из папки "Сомнительно" сравнить с этим списком, если есть, то пропускаем, а если нет, то переносим его в папку "Отсутствующие".

Это надо какой-то скрипт писать или можно в команде одной заделать?

Оффлайн qpdb

  • Забанен
  • Активист
  • *
  • Сообщений: 628
  • xUbuntu 22.04
    • Просмотр профиля
Re: Работа с файлами
« Ответ #1 : 27 Сентября 2021, 13:36:24 »
Приветствую!

Так или иначе задача может соприкоснуться с групповым переименованием файлов… Если коллекция на несколько десятков гигабайт, то будет непросто  :'(

Желательно бы начать с backup’а всего что есть(я имею в виду фото) при возможности…

Далее всем фото присвоить уникальный, префикс или вообще какой-то уникальный тег, после чего переместить все фото в одну директорию где их и сравнивать, для начала по размеру, а потом может быть даже «унизиться :) » до визуального сравнения…

find . -depth -type d,f -name $'*' -execdir  rename -n  $'s:\/:\/A_:' '{}' \;|nl
Например эта команда ⮝⮝ должна добавить ко всем файлам в директориях и поддиректориях в начало как директорий так и поддиректорий A_ …

find . -maxdepth 1  -type d,f -regex "^\.\/.*"|sed 's:\.\/::'|rename -n 's:^:sprintf("./%03d_", $^R+=1):e'|nl
Эта команда ⮝⮝ присвоит порядковые номера в конкретной директории (rename -n проект, без -n реальное выполнение)

Ещё нужно будет прочитать что-то по теме сравнение изображений, мало ли какие новации или программы появились…

Вообще Вы поставили перед собой не очень простую задачу  :idiot2:

2021-09-27 06:36:16


« Последнее редактирование: 27 Сентября 2021, 13:38:22 от qpdb »

Оффлайн jurganov

  • Старожил
  • *
  • Сообщений: 1723
    • Просмотр профиля
Re: Работа с файлами
« Ответ #2 : 28 Сентября 2021, 05:51:14 »
список всех файлов в папке
llВыводит список файлов с их путями в корневой директории, а так же подпапках
find ./ -type fтоже самое поместить в текстовый файл в домашней папке
find ./ -type f > ~/1.txtДля сравнения двух файлов достаточно выполнить команду:
diff sample1.txt sample2.txt. и разницу через > вывести в текстовый файл

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 7257
  • Luck Tales
    • Просмотр профиля
Re: Работа с файлами
« Ответ #3 : 28 Сентября 2021, 06:02:43 »
Т.е. надо получить список всех файлов, что есть в папке "Фото" и каждый файл из папки "Сомнительно" сравнить с этим списком, если есть, то пропускаем, а если нет, то переносим его в папку "Отсутствующие".
fdupes
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн qpdb

  • Забанен
  • Активист
  • *
  • Сообщений: 628
  • xUbuntu 22.04
    • Просмотр профиля
Re: Работа с файлами
« Ответ #4 : 28 Сентября 2021, 13:35:41 »
Приветствую!

Вот это может оказаться полезным LINK

Всё там упомянуто du, find, awk, fdupes называется „работай не ленись”! :D

2021-09-28 06:35:36


Оффлайн firststart

  • Автор темы
  • Участник
  • *
  • Сообщений: 105
    • Просмотр профиля
Re: Работа с файлами
« Ответ #5 : 29 Сентября 2021, 11:04:22 »
Много интересного. Благодарю всех. Буду разбираться.

Пользователь добавил сообщение 30 Сентября 2021, 09:21:00:
Нашел программу, которая полностью решила мою проблему с поиском дубликатов.
Если кому интересно, то вот статья про нее: https://losst.ru/poisk-dublikatov-fajlov-v-linux
« Последнее редактирование: 30 Сентября 2021, 09:21:00 от firststart »

 

Страница сгенерирована за 0.031 секунд. Запросов: 25.