![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Сравнение файлов в каталогах. |
|
Любой язык - [решено] Сравнение файлов в каталогах.
|
Старожил Сообщения: 433 |
Всем доброго времени суток.
Прочитал все похожие темы. но сам что-то дотумкать немогу. Потому прошу о помощи. Есть два каталога с файлами. например D:\1 и D:\2. Нужно сравнить файлы из 1 и 2 между собой и удалить все одинаковые из каталога 2 Файлы маленькие по размеру, если возможно сравнение по CRC или MD5, то вообще отлично. |
|
Отправлено: 11:07, 11-11-2013 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата NikolayHAOS:
|
|
Отправлено: 08:50, 12-11-2013 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 433
|
Профиль | Отправить PM | Цитировать Iska, Абсолютно согласен с вами.
Как правильно запустить скрипт, подскажите пожалуйста. Бьюсь бьюсь весь инет перерыл, ан нет все равно ошибка, мобыть в скрипте чего не так? |
Отправлено: 08:54, 12-11-2013 | #12 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать Выше я написал и тов. Iska дал ссылку, что требуется версия PowerShell 3.0 и выше.
Посмотреть версию PowerShell - $PSVersionTable.PSVersion |
Отправлено: 08:59, 12-11-2013 | #13 |
Старожил Сообщения: 433
|
Профиль | Отправить PM | Цитировать Kazun, Агромное спасибо вы просто гений, все заработало.
Iska, Почему то считал что Framework 3.0 включен в 4.5.1 - ошибся. Установил и все отлично. Цитата Iska:
Всем агромное спасибо. З.Ы. Жаль, что сам нефига не понимаю в этом скрипте, ща попробую изменить пути на свои. И отпишу. Все работает. Благодарю. |
|
Отправлено: 14:49, 12-11-2013 | #14 |
Пользователь Сообщения: 70
|
Профиль | Отправить PM | Цитировать NikolayHAOS, я говорил про кодировку самого bat-файла. Кодировка сравниваемых файлов безразлична. Они могут быть даже двоичные, только надо добавить после команды fc ключ /b:
for %%f in (d:\2\*.*) do ( fc /b "%%f" "d:\1\%%~nxf"|find "FC: различия не найдены" if not errorlevel 1 del "%%f" ) Поскольку bat - это язык файло-ориентированный, многие операции над файлами в нём программируются намного проще, чем в других. Поэтому я не считаю это садомазохизмом. ![]() |
------- Отправлено: 19:24, 12-11-2013 | #15 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Гуллипут, дело, разумеется, не в Вашем коде, а в особенностях сравнения «fc.exe»: в общем случае сравнение по хэшам выигрывает в производительности.
|
Отправлено: 20:06, 12-11-2013 | #16 |
Старожил Сообщения: 433
|
Профиль | Отправить PM | Цитировать Гуллипут, Спасибо и ваш метод отлично работает, И в мне легче разобраться в вашем коде, так как его почти там нет :-).
|
Отправлено: 00:05, 13-11-2013 | #17 |
Пользователь Сообщения: 70
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Правда, я не разбирался в алгоритме, который выложил Kazun, может, он так и делает ? Но для этого ему надо ставить обработчик на событие изменения файлов в каталоге. В принципе, реально, я это делал на Delphi, но не знаю, может ли это PowerShell. В нём я не разбираюсь: пару лет назад проглядел одну книжку, но на работе это не используется, поэтому и благополучно забыл прочитанное. |
|
------- Последний раз редактировалось Гуллипут, 13-11-2013 в 08:02. Причина: Дополнение Отправлено: 07:50, 13-11-2013 | #18 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Гуллипут:
CloneSpy умеет работать с предварительно рассчитанными им и сохранёнными наборами хэшей файлов. Это удобно в случае, аналогичном рассматриваемому — когда неизменный или редко обновляемый набор файлов сравнивается со вновь поступающими наборами файлов. |
|
Отправлено: 10:43, 17-11-2013 | #19 |
Пользователь Сообщения: 70
|
Профиль | Отправить PM | Цитировать Iska, я сравниваю не каждый файл с каждым, а файлы с совпадающими именами. Поскольку "одинаковость файлов" я понял, как совпадение не только содержимого, но и имён.
|
------- Отправлено: 21:56, 18-11-2013 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Поиск и проверка сегодняшних файлов в динамических каталогах | rudimko | Скриптовые языки администрирования Windows | 4 | 10-09-2012 20:55 | |
CMD/BAT - [решено] Создание файлов в несуществующих каталогах | Bruce Wayne | Скриптовые языки администрирования Windows | 3 | 26-07-2012 21:35 | |
CMD/BAT - CMD-файл, обеспечивающий обмен файлов в двух каталогах | stAlexey | Скриптовые языки администрирования Windows | 5 | 23-10-2010 19:46 | |
Прочие - Программа для сравнения файлов в различных каталогах | shadowmaster63 | Программное обеспечение Windows | 3 | 14-04-2010 10:28 | |
Сравнение файлов | Guest | Программирование и базы данных | 6 | 24-04-2004 04:47 |
|