PDA

Показать полную графическую версию : Интересная задача


truvo
13-06-2010, 03:52
Я не знаю, как более конкретно назвать эту тему. Можно ли батником или с помощью какой-нибудь программы решить следующую задачу: скопировать файлы из папки A в папку Б так, чтобы все файлы в папке Б имели те же самые даты создания и нулевой размер? То есть нужен по сути дела список файлов из папки A, но не в текстовом виде, а именно в виде папки с файлами, то есть такой список, удалять или переименовывать элементы в котором нужно не в текстовых редакторах, а именно в проводнике или в Total Commander.

Drongo
13-06-2010, 13:36
truvo, Вариант с программой zerofiles из вашей темы - Как переслать "оглавление" архива? (http://forum.oszone.net/showthread.php?t=158012) -> Комментарий 5 (http://forum.oszone.net/post-1278428-5.html). Пойдёт? Папки и файлы создаются с нулевым размером и исходной структурой.

P.S. Правда...Даты не сохраняются »

truvo
13-06-2010, 19:29
Drongo, в чем суть моего запроса. Есть файлы-архивы аддонов. И есть папка UpdatePack\Addons, где все эти папки с аддонами находятся в распакованном виде, подготовленные к интеграции в дистрибутив для автоустановки.

Но дело в том, что эти папки аддонов, которые авторы кладут в архивы, в большинстве случаев не несут никакой информации о номере или дате версии аддона. Иногда эта информация есть в nfo-файлах, но только иногда, и просматривать эти файлы неудобно. Поэтому чтобы отслеживать обновления аддонов, приходится хранить все архивы аддонов (чтобы ориентироваться на версии в именах архивов или на даты архивов).

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

Если бы, конечно, все авторы аддонов включали версию в название внутренней папки в архиве, то вопроса такого бы не было. Только не заставишь всех никак...

gora
13-06-2010, 22:31
Вот и хотелось иметь эту информацию об именах и датах »
Имена и даты можно получить командой Dir, но это Вам не поможет, т.к., некоторые аддоны при работе пака претерпевают модификации и дата папки аддона становится текущей. Это же относится и к некоторым (модифицируемым) файлам в папке аддона. Т.е., после запуска интеграции такой аддон становится "новее" своего оригинала! Файлы addon.nfo и их содержимое могут не меняться авторами от версии к версии, как и другие "постоянные" файлы. Нужно сформулировать для себя четкие критерии сравнения нового и старого аддона, а это самое сложное.

truvo
14-06-2010, 02:28
некоторые аддоны при работе пака претерпевают модификации и дата папки аддона становится текущей »gora, я не говорил о дате папки, я говорил о том, что желательно было бы, чтобы авторы аддоноввключали версию в название внутренней папки в архиве » Когда номер версии аддона есть в названии папки, этого вполне достаточно, чтобы выяснить актуальность аддона. Но, повторю, добиться от всех единообразного оформления заархивированной папки аддона не получится - только если самому возиться и переименовывать папки.Файлы addon.nfo и их содержимое могут не меняться авторами »Так я об этом же и написал:Иногда эта информация есть в nfo-файлах, но только иногда ».Есть, конечно, один способ для меня: скачал архив, сразу же распаковал, создал пустой файл-комментарий к архиву с помощью контекстной утилиты "Комментарий к файлу" (создается nfo-файл с тем же именем) и удалил архив. Правда, получается дата скачивания аддона, а не дата его создания, но, во всяком случае чей-то пост на тему "Обновил аддон" уже можно сравнить с этой датой, если имя архива осталось у автора прежним.

Кстати, никто не может помочь - написать такой батник, который: запускает утилиту "Комментарий к файлу" (ссылка тут: http://forum.oszone.net/thread-137162.html) по отношению к файлу с маской *.7z, *.rar или *.zip, содержащемуся в папке XYZ, закрывает утилиту нажатием в ней кнопки "Запись и выход", удаляет этот архив и переходит к следующему - и так до тех пор, пока не расправится со всеми архивами в данной папке.

Хотя такой батник, наверное, можно соорудить и без использования утилиты?

androic
14-07-2010, 14:44
При записи программ на диск нужно было сделать что-то типа вкладыша в бокс с перечнем содержимого. Использовал штатный инструмент Тотал Коммандера - получал текстовый документ с названиями папок и (при желании) вложенные файлы с датами, размером и т.д. Даты, как сказано выше, не всегда авторские, но меня больше интересовала версия. Выкидывал лишнее, печатал вкладыш.
Это почти не в тему топикстартера, но может пригодиться тому, кто заглянет сюда в поисках решения по аналогичному моему вопросу.

Amigos
15-07-2010, 07:54
нужно было сделать что-то типа вкладыша в бокс с перечнем содержимого. Использовал штатный инструмент Тотал Коммандера » чисто ради интереса - а почему не использовался "штатный инструмент" самого NERO - CoverDesigner ?

Вот и хотелось иметь эту информацию об именах и датах, чтобы не хранить сами архивы и высвободить место на диске. »Посоветуйте, пожалуйста, каким компактным и наглядным способом - в виде текста или, возможно, в других видах - можно ознакомить человека по почте с полным содержанием всех папок и подпапок внутри данного архива? »
мне нужно полное дерево, со всеми потрохами, и желательно чтобы с именами файлов была и дата. »
Наиболее простой способ - использовать TC + плагин diskdir.
diskdir - это архиваторный плагин, который создаёт DIR архивы, являющимися текстовыми файлами следующего вида C:\temp\unatended\2008-make\make\Addons\
4-Durable_taskmgr\ 0 2010.7.7 13:10.8
4-Durable_taskmgr\Files\ 0 2010.7.14 16:4.40
taskmgr.exe 139264 2008.4.15 12:0.0
4-Durable_taskmgr\Files\Compressed\ 0 2010.7.14 16:4.40
taskmgr.ex_ 51832 2010.7.14 16:4.40
4-Durable_taskmgr\Files\ForceCopy\ 0 2010.7.7 15:31.16
4-Durable_taskmgr\Files\ForceCopy\SVCPACK\ 0 2010.7.7 15:31.24
TASKMGR.CA_ 3263 2010.7.7 0:33.28 Сам TC DIR файлы считает архивами и позволяет производить в dir архивах операции сравнения, как с обычными архивами.
Но дело в том, что эти папки аддонов, которые авторы кладут в архивы, в большинстве случаев не несут никакой информации о номере или дате версии аддона. Иногда эта информация есть в nfo-файлах, но только иногда, и просматривать эти файлы неудобно. Поэтому чтобы отслеживать обновления аддонов, приходится хранить все архивы аддонов (чтобы ориентироваться на версии в именах архивов или на даты архивов). » No Way. Для сравнения необходимы файлы из предыдущих версий аддонов, а не их даты, т.к. некоторые авторы (например Simplix) в своих аддонах используют для файлов дату 15.04.2008 и не меняют её при выпуске изменённых версий аддонов.
Т.е. хотите иметь возможность сравнения версий аддонов - нужно хранить файлы аддона (в архиве или так), а не только даты файлов.
Если бы, конечно, все авторы аддонов включали версию в название внутренней папки в архиве, то вопроса такого бы не было. » тогда бы форум был завален воплями новичков, которые умудрились интегрировать несколько версий одного аддона одновременно (ведь они в разных папках).

truvo
15-07-2010, 11:06
Amigos, я говорил о датах архивов, хранящихся на компе - то есть СКАЧАННЫХ заархивированных аддонов. Таким образом, подразумевались ДАТЫ СКАЧИВАНИЯ.

А в остальном изучу ваш фундаментальный пост позже...

androic
17-07-2010, 00:09
чисто ради интереса - а почему не использовался "штатный инструмент" самого NERO - CoverDesigner ? »
Потому что мне не красивая бумажечка была нужна, а именно список с перечнем тематических папок (дерево) с разложенными в них многими десятками скачанных из сети прог с указанием версии проги и даты скачки. Лист А4 мелким шрифтом с двух сторон, сложенный в три рубля (диски двд).

menpavel
19-07-2010, 12:42
из *nix знаю утилиту touch. Погуглил - есть порт для windows. а в скрипте, я думаю, использовать будет не сложно.




© OSzone.net 2001-2012