Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Ru.Board » Общие вопросы по Ru.Board » Где спросить?

Модерирует : batva, DimoN

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Открыть новую тему     Написать ответ в эту тему

Shershen



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Где спросить
путеводитель по Руборду

 
   У вас есть вопрос, вы считаете, что можно получить на него ответ на Руборде, но не знаете, где именно на Руборде. Если так, то эта ветка для вас. Многие ответы собраны в теме FAQ по форуму Ru.Board
 
    Общее для всех веб-форумов и иных публичных мест условие получения грамотного, полезного вам и, по возможности, оперативного ответа — обращение с вопросом по уместному адресу [1].
    Отличие Руборда от многих форумов и списков рассылок, где принят принцип «один вопрос — одна нить (thread)», заключается в том, что довольно широкий круг вопросов, заданных разными людьми, может обсуждаться одной нитью. Таким образом, для того, чтоб ваш вопрос не остался без ответа, выбрать субфорум недостаточно, нужно правильно выбрать еще и ветку в этом субфоруме.
 
    Этому, помимо поиска фильтром и гуглом, могут помочь т. н. «карты» форумов:
 
Мета:
· Помощь по Руборду
· Тестирование
 
Операционные системы:
· Microsoft Windows
· UNIX
 
«Железо»:
· Выбор железа
· Видеосистема (графкарты, мониторы и ко.)
· Драйверы и прошивки BIOS
· Ремонт жестких дисков
 
Игры:
· Военные стратегии
· Экономические стратегии
· Стратегии в разработке
· Квесты
· Fantasy RPG
· RPG в разработке
· Симуляторы
· Спортивные игры
· Небольшие интересные игры
· Форумные игры
 
А также:  
· Музыка и кино
· Игры и фильмы  
· Техническая, научная, учебная и т. п. литература
 
 
Однако, как хорошо видно, они есть не во всех форумах, далеко не всегда полны и не всегда актуальны. Поэтому, возможно, вы и с их помощью не найдете нужной ветки.
Если так случилось — где лучше спрашивать, вы не поняли (или сомневаетесь) — не стесняясь, спрашивайте здесь. Мы попробуем указать вам верное направление. Обобщать и упрощать при этом не надо, задавайте ваш вопрос полностью — это и вам проще, и нам.
 

Смело правьте и дополняйте шапку, однако не забывайте отписываться об исправлениях и сохранять в своем посте под [#] исходный вариант.

Первое сообщение изначально имело вид...

Всего записей: 66 | Зарегистр. 28-04-2003 | Отправлено: 15:46 14-08-2004 | Исправлено: vzar, 08:07 07-06-2022
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail
Цитата:
надо найти какие файлы в этих директориях НЕ ДУБЛИРОВАННЫЕ
..если надо под вендой и без лишней "математики" - покури в том же тотал-командире фичу синхронизации папок..  

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 07:04 29-12-2016
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail  29-12-2016

Цитата:
не нашел где спросить и как сделать.

Да хоть здесь или даже лучше здесь

Цитата:
надо найти какие файлы в этих директориях НЕ ДУБЛИРОВАННЫЕ.

А дальше? Найти - легко, только требуется уточнение, что с ними делать, с найденными файлами?
Если переместить в новую папку уникальные файлы - одно, если просто посмотреть и ничего не делать - другое.
И да, нужны совсем уникальные, т.е. не имеющие дубликатов вовсе, либо из дубликатов выбрать один (тут же уточнить по какому критерию, если так)?  
А также уточните - что понимать под дубликатами? Одинаковые только наименования или наименование плюс размер, или даже, может быть, по содержанию тоже требуется сравнение?
В общем, чем подробнее опишете задачу, тем точнее получите решение.

----------
scio me nihil scire

Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 07:54 29-12-2016 | Исправлено: YuS_2, 08:04 29-12-2016
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
вангую - товарисч просто хочет найти эти самые уникальные файлы в общей куче..
шоб потом их забэкапить/перенести/удалить - не суть, тут последующая задача не важна..
упор вопроса именно на поиск был - т.е. найти такие, которые не с чем сравнивать..
 
вопчем, сугубое имхо - ТС рулит как самое юзерфрендное решение.. )

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 08:46 29-12-2016 | Исправлено: TheBarmaley, 08:47 29-12-2016
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TheBarmaley

Цитата:
найти такие, которые не с чем сравнивать..

В тоталкоммандере, при всем его юзерфренд, необходимо:
Выделить рекурсивно уникальные файлы, т.е. не имеющие дубликатов в каталоге "A", затем то же самое проделать в каталоге "B", после чего необходимо ещё сравнить и эти два результата... в общем, не совсем тривиальное действие...
А, например, на powershell, это выглядеть будет примерно так:

Код:
function compFname($l1,$l2){
    if($l1 -eq $l2){$i=0}
    else{$i=1}
    $l1|%{
        $sum=0
        foreach($var in $l2.Name){if($_.Name -eq $var){$sum++}}
        if($sum -eq $i){$_}
    }
}
 
$d1 = 'c:\test\1'
$d2 = 'c:\test\2'
$list1 = dir "$d1\*" -recurse -force|where{!$_.PSIsContainer}
$list2 = dir "$d2\*" -recurse -force|where{!$_.PSIsContainer}
 
$a = compFname $list1 $list1
$b = compFname $list2 $list2
(compFname $a $b).fullname

 
Хмм, что-то я отвлекся. Это ведь уже не здесь обсуждать надо...

----------
scio me nihil scire

Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 10:32 29-12-2016
alex52mail

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
YuS_2  А дальше? Найти - легко, только требуется уточнение, что с ними делать, с найденными файлами?  

Цитата:
 TheBarmaley  вопчем, сугубое имхо - ТС рулит как самое юзерфрендное решение..  

Вот после вопроса стал засыпать, и решил что не совсем пояснил вопрос, и синхронизация ТС  здесь не рулит. Проснулся и уточняю.
Проблема возникла так. Есть много уровненный большой архив\директория. На всякий случай, перед его реорганизацией делается копия. И в одной директории файлы перемещаются как сами так и целыми папками, (только) папки переименовываются, дубли файлов удаляются.  
И в конце хотелось бы проверить - а не потерялось что либо в процессе реорганизации архива\директории (т.е. в одной директории файлы есть, а в другой нет, хотя внутри каждой директории файлы в разных папках), и только потом удалить копию.
 
Тут вероятно надо писать скрипт типа как то найти и поместить все файлы одной директории в один список (P.S. в ТС на директории Cntr+B, сортировать по имени, и \Выделение\Сохранить в файл), потом по очереди брать каждый файл из списка, и искать такой же в другой директории.
Но может есть такая программа или готовый скрипт.

Цитата:
YuS_2  А, например, на powershell, это выглядеть будет примерно так:
Делать надо в WinXP

Всего записей: 1817 | Зарегистр. 04-09-2015 | Отправлено: 10:47 29-12-2016 | Исправлено: alex52mail, 14:11 29-12-2016
sergio147



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail,
 
а если в Тотале вывести в двух табах файлы списком как результат поиска?
И потом сравнить эти списки встроенным инструментом Синхронизация каталогов?
 
Или Синхронизация не сработает на этих списках...


----------
Есть многое на свете, друг Гораций,
что неподвластно нашим мудрецам

Всего записей: 2444 | Зарегистр. 28-10-2006 | Отправлено: 11:07 29-12-2016
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail, то есть найти файлы из одной кучи, не встречающиеся в другой?  Что может быть проще, но внезапно даже есть готовая программа — уже упомянутая выше md5deep(1):
 
$ md5deep -r dir2 > dir2.md5deep
$ md5deep -r dir1 -x dir2.md5deep


----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 11:13 29-12-2016 | Исправлено: ASE_DAG, 11:14 29-12-2016
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail  29-12-2016

Цитата:
Делать надо в WinXP

XP SP3 Powershell

----------
scio me nihil scire

Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 11:49 29-12-2016
Germanus



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail
Beyond Compare

Всего записей: 4447 | Зарегистр. 08-06-2003 | Отправлено: 12:03 29-12-2016
alex52mail

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
ASE_DAG  Если же нет — вы говорите именно о поиске дубликатов среди кучи файлов, почему-то разделенной тем не менее по двум каталогам, то как-то так, наверное:
 
$ md5deep -r dir1 dir2 | sort | uniq -w 32 -c | awk '$1 == 1 { print $3 }'
Надо именно в смешанной куче найти НЕ ДУБЛИКАТЫ в целом по директории, когда в 2х директориях файлы в разных (в т.ч. по имени) папках,  и потом решить что с ними делать.
 
Хотелось бы средствами WinXP. Нет установленного Linux. Но если ваше работает для НЕ ДУБЛИКАТОВ, то загружусь в Linux образы, и к тому же 12МВ TinyCore-current.iso можно подгрузить   md5deep если его там нет. Но в Linux дольше (не говорю сложнее) монтировать, прописывать пути.
 
md5deep найдет НЕ ДУБЛИКАТЫ ?

Всего записей: 1817 | Зарегистр. 04-09-2015 | Отправлено: 12:15 29-12-2016 | Исправлено: alex52mail, 14:06 29-12-2016
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail
Ставьте, ё-моё, powershell - не раз ещё пригодится. Тем более, что Ваша задача, после уточнений:

Цитата:
на директории Cntr+B, сортировать по имени, и \Выделение\Сохранить в файл), потом по очереди брать каждый файл из списка, и искать такой же в другой директории.

на самом деле, проще, чем кажется :

Код:
$d1 = 'c:\TEST\1'
$d2 = 'c:\TEST\2'
$list1 = dir "$d1\*" -recurse -force|where{!$_.PSIsContainer}
$list2 = dir "$d2\*" -recurse -force|where{!$_.PSIsContainer}
 
diff $list1 $list2 -prop Name -PassThru|sort -prop fullname|ft -prop FullName  -HideTableHeaders -auto

Выведет, что требуется и куда требуется - хоть в текст, хоть в отдельный каталог, куда фантазия, в общем прикажет ... да и свойство любое, довольно просто, можно вытащить из объекта(файла)...

----------
scio me nihil scire

Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 12:46 29-12-2016 | Исправлено: YuS_2, 12:50 29-12-2016
alex52mail

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 YuS_2  Ставьте, ё-моё, powershell - не раз ещё пригодится. Тем более, что Ваша задача, после уточнений:
Спасибо, буду иметь ввиду для других компов, но сейчас не подходит, т.к. делается на стареньком компе, и powershell  WindowsXP-KB968930-x86-ENG требует еще не нужный здесь отсутствующий .NET
Решение надо проще. Разбираюсь пока с BCompare-4.1.9.21719, не выйдет буду смотреть на md5deep

Всего записей: 1817 | Зарегистр. 04-09-2015 | Отправлено: 13:07 29-12-2016 | Исправлено: alex52mail, 13:12 29-12-2016
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail

Цитата:
Решение надо проще.

Т.е. если я правильно понял:
 29-12-2016

Цитата:
перед его реорганизацией делается копия. И в одной директории файлы перемещаются как сами так и целыми папками, (только) папки переименовываются, дубли файлов удаляются.


Цитата:
в конце хотелось бы проверить - а не потерялось что либо в процессе реорганизации архива\директории (т.е. в одной директории файлы есть, а в другой нет, хотя внутри каждой директории файлы в разных папках), и только потом удалить копию.

А чем не устраивает вариант с тоталкомандером?
Ctrl+B слева, затем Ctrl+B справа, затем Shift+F2 - будут выделены уникальные файлы и с одной стороны и с другой, причем всё это с рекурсией...
Имхо, для сравнения скопированного - вполне приемлемо.

Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 19:06 29-12-2016
Germanus



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail

Цитата:
Разбираюсь пока с BCompare

Как я это делаю:
1. Вызов Beyond Compare подвешен в SpeedCommander-e на сочетание Ctrl+Shift+C с передачей в параметрах папок в активной и неактивной панелях.
2. Выбираю нужную папку справа,  
3. Выбираю нужную папку слева
4. Ctrl+Shift+C - открывается BC с нужными уже папками (курсор при этом, для отсутствия путаницы, конечно же стоит слева)
5. В сессии по умолчанию заранее настроены интересующие меня параметры сравнения.
6. произвожу необходимые действия в BC
7 Выход по Esc
 
При определенной практике - скорость, более чем удовлетворительная.
 
Минус в том, что BC не умеет сравнивать содержимое внутренностей папок, если на правой и левой панелях разные по именам папки. Если у вас такой случай, то либо вам эта техника не подойдет в принципе, либо придется каждый раз выбирать на панелях нужные папки и вызывать BC.

Всего записей: 4447 | Зарегистр. 08-06-2003 | Отправлено: 19:53 29-12-2016
alex52mail

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 Germanus  Минус в том, что BC не умеет сравнивать содержимое внутренностей папок, если на правой и левой панелях разные по именам папки. Если у вас такой случай, то либо вам эта техника не подойдет в принципе,  
Да, именно такой случай. Провозился с BC с час, но не нашел себе решения.
Цитата:
 YuS_2   А чем не устраивает вариант с тоталкомандером?
Ctrl+B слева, затем Ctrl+B справа, затем Shift+F2 - будут выделены уникальные файлы и с одной стороны и с другой, причем всё это с рекурсией...
Имхо, для сравнения скопированного - вполне приемлемо.  
Да тем, что не дошел до этого сам - не успел еще перепробовать все варианты с ТС, когда обычная синхронизация действительно здесь не рулит.  
Действительно, как девиз моего канала ЛЮБАЯ ПРОБЛЕМА ИМЕЕТ ПРОСТОЕ РЕШЕНИЕ !!!
 
Для проверки наличия  или отсутствия одинаковых файлов в двух директориях в целом, даже если файлы в РАЗНЫХ вложенных папках как по месту, так и по имени,  в тоталкомандер с обоих сторон Ctrl+B в открытых директориях покажет ВСЕ файлы.
\Выделение\Сравнить каталоги\ == Shift+F2 или  \Выделение\Сравнить, скрыв одинаковые файлы\
Открытый Ctrl+B список рекурсивно не синхронизируется\копируется, но можно  \Выделение\Сохранить_в_файл\ - сохранить полные пути выделенных файлов в файл, и далее дело техники что с ними делать - просмотреть, просто или рекурсивно копировать сначала в другое место, типа читая построчно файл со списком,  и копируя файл этой строки
Код:
@echo of
 
set flist=%~1%  
echo flist ==== %flist%
for /F   %%i in (%flist%) do copy %%i  c:\tmp\%%i
Спасибо - проблема решена просто.

Всего записей: 1817 | Зарегистр. 04-09-2015 | Отправлено: 23:43 29-12-2016 | Исправлено: alex52mail, 17:34 30-12-2016
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail
>> $ md5deep -r dir1 dir2 | sort | uniq -w 32 -c | awk '$1 == 1 { print $3 }'
> Надо именно в смешанной куче найти НЕ ДУБЛИКАТЫ
> md5deep найдет НЕ ДУБЛИКАТЫ?
 
Чего кричим?  md5deep(1) — нет, весь этот костыль, что я вам написал, — да.
 
> Хотелось бы средствами WinXP.  
 
Тогда обратитесь в ветку по написанию программ на VBScript / JScript или на языке cmd.exe.
 
> Нет установленного Linux.
 
Что?  Откуда у вас Linux® взялся?

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 23:30 30-12-2016
emx



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вы тут оффтопом увлеклись чрезмерно :\

----------
In medio stat virtus.
ТА!

Всего записей: 11862 | Зарегистр. 05-06-2002 | Отправлено: 00:18 31-12-2016
tramparamparam02



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, а по Android OS у нас на форуме вообще совсем ничего нет? Как-то странно это, учитывая долю этих устройств на рынке.

Всего записей: 2381 | Зарегистр. 30-03-2016 | Отправлено: 12:28 10-03-2017
Aleks78



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Общая тема есть.

----------
Кешбек на Али до 15%
Digma — лауреат премии pc magazine.

Всего записей: 19197 | Зарегистр. 18-12-2004 | Отправлено: 12:33 10-03-2017
ALeXkRU



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tramparamparam02
ну, не то чтобы совсем...есть

Всего записей: 11893 | Зарегистр. 03-12-2003 | Отправлено: 12:34 10-03-2017
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Компьютерный форум Ru.Board » Ru.Board » Общие вопросы по Ru.Board » Где спросить?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru