anonymous@RULINUX.NET~# Last login: 2024-11-10 00:11:58
Регистрация Вход Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск
[#] [Добавить метку] [Редактировать]
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

Э...

find -type f | xargs md5sum | sort | uniq -dw 32 | xargs rm

?

anonymous(*) (2009-06-03 22:10:23)

Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.12) Gecko/20080331 Firefox/2.0.0.12

[Ответить на это сообщение]
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

Слегка поторопился, и ещё надо учесть пробелы в именах файлов:

find -type f -print0 | xargs -0 md5sum | sort | uniq -dw 32 | sed -r 's,^w+ *,,; s,$,x0,' | xargs -0 rm

Но идея, думаю, понятна и вряд ли это будет медленнее других возможных решений.

anonymous(*)(2009-06-03 23:28:36)

Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.12) Gecko/20080331 Firefox/2.0.0.12
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

Вот третья версия. Предыдущая будет корректно работать только если есть не более двух одинаковых файлов.

find -type f -print0 | xargs -0 md5sum | sort | uniq –all-repeated=prepend -w 32 | sed -r '/^$/{N; d}; s,^w+ *,,; s,$,x0,' | xargs -0 rm

Виноват, после напряжённого рабочего дня соображалка уже плохо работает. Но вообще такие задачи обычно удобнее всего решать подобными скриптами, разумеется, с предварительной отладкой.

anonymous(*)(2009-06-03 23:46:11)

Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.12) Gecko/20080331 Firefox/2.0.0.12
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

http://212.152.36.162/images/find.pl.txt

правда она лишь выводит на печать одинаковые по md5 сумме файлы, соответственно можно там какойннить unlink вставить на файлы. правда она держит в памяти хэш, который может пожрать всю оперативку.

vilfred(*)(2009-06-03 23:51:24)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.8.0.3) Gecko/20060524 ASPLinux/1.5.0.3-0.110am Firefox/1.5.0.3 pango-text
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

запускать так: perl find.pl /var/www/html/images

vilfred(*)(2009-06-03 23:52:25)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.8.0.3) Gecko/20060524 ASPLinux/1.5.0.3-0.110am Firefox/1.5.0.3 pango-text
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

да уж, твоя команда явно короче моей проги =)

vilfred(*)(2009-06-03 23:53:05)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.8.0.3) Gecko/20060524 ASPLinux/1.5.0.3-0.110am Firefox/1.5.0.3 pango-text
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

Вроде работает. Вот только sha1sum вроде быстрее

anonymous(*)(2009-06-04 00:25:29)

Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.0.10) Gecko/2009050804 Mandriva/1.9.0.10-0.1mdv2009.1 (2009.1) Firefox/3.0.10
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

> Поиск продолжался около 10 часов, при этом жутко грузило проц и наблюдались жуткие тормоза.

сколько у тя оперативы?

> Интерфейс у неё настолько убог, что сразу было видно какой кулхацкер её делал.

бвахахах!

Я пользовался для этих целей самописным скриптом на лиспе, настрочить показалось проще чем готовое йскать.

bugmaker(*)(2009-06-04 01:10:51)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

> find -type f | xargs md5sum | sort | uniq -dw 32 | xargs rm

Ага, помню-помню. Тоже что-то хотел удалить рекурсивно из подмонтированной директории с другой linux-системой. Наворотил какую-то строку и ошибся где-то, забыл указать полный путь. Когда я нажал Сtrl-C, этот скрипт уже удалял файлы в дебрях /usr... Короче, система не взлетела. Это я к тому, что такие скрипты с глобальным удалением всего и вся нужно прежде много раз проверить. А уже только потом пробовать запустить на реальной системе.

anonymous(*)(2009-06-04 17:23:10)

anonymous
avatar
Скрыть

[красноглазие] А почему ява такое унылое гавно?

Коротко суть задачи: в результате работы skynet скопилось около 20 гб сравнительного мелких файлов. Задача простая до безобразия: нужно найти и удалить дублирующиеся файлы. Делается это довольно легко. Для каждого файла вычисляется, например, md5 и по списку ищутся одинаковые.

Первым делом заюзал http://duplicatefilessearcher.net/ Поиск продолжался около 10 часов, при этом жутко грузило проц и наблюдались жуткие тормоза. Ждать до конца у меня просто не хватило терпения.

Следующая на очереди была закрытая платная поделка под венду http://www.funduc.com/dupfiles.htm Интерфейс у неё настолько убог, что сразу было видно какой кулхацкер её делал. К моему счастью там был триальный срок. Какого же было моё удивление, когда под вайном это поделие выполнило задачу примерно за 30 минут. Я конечно понимаю, что ява - УГ, но чтобы на столько. Из-за этого мну бешено негодует и сносит яву.

ЗЫЖ дабы остановить меня от клепания велосипедов, посоветуйте аналогичную, но нативную прогу.

anonymous(*)(2009-06-03 22:10:23)

Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.9.0.10) Gecko/2009050804 Mandriva/1.9.0.10-0.1mdv2009.1 (2009.1) Firefox/3.0.10
avatar
Скрыть

Re:[красноглазие] А почему ява такое унылое гавно?

> Ага, помню-помню.

Сынок, просто надо было rm -i проставить на время отладки ;-)

anonymous(*)(2009-06-05 12:00:08)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.8.1.22pre) Gecko/20090327 Ubuntu/7.10 (gutsy) Firefox/2.0.0.22pre
Этот тред читают 2 пользователя:
Анонимных: 2
Зарегистрированных: 0




(c) 2010-2020 LOR-NG Developers Group
Powered by TimeMachine

Valid HTML 4.01 Transitional Правильный CSS!