|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - автоматический поиск и замена HEX в файлах |
|
CMD/BAT - автоматический поиск и замена HEX в файлах
|
Старожил Сообщения: 166 |
Возможно ли такое сделать с помощью cmd? Нужно автоматически поправить HEX большого количества файлов с последующим переименованием.
И вот ещё: как сделать так чтобы такой скрипт работал: 1 - при перетаскивании на него одного/группы файлов 2 - при запуске производился поиск и обработка файлов вглубь по каталогам. p.s.: иногда нужно не заменить hex, а добавить его в определённое место в файле. |
|
Отправлено: 21:51, 05-12-2010 |
Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Отлично, всё работает! А как заставить его:
1 - находить *. sdd файлы вглубь по каталогам и преобразовывать 2 - конвертировать файл при перетаскивании его на *.bat файл, конвертировать только этот файл, даже если в этом каталоге присутствуют другие для первого это может быть вот так?: @echo off SETLOCAL EnableDelayedExpansion (for /F "Tokens=*" %%a In ('Dir /B /S "*. sdd"') do ( dd bs=1c count=128 if="%%a" of="%~n0.tmp"2>nul set "$b="&for %%b in (*.old) do if not defined $b fc /b "%~n0.tmp" "%%b" >nul&& set "$b=%%~nb" if defined $b if not exist "!$b!.new" (echo File "!$b!.new" not found^^!) else ( dd bs=1c count=128 if="!$b!.new" of="%%a"2>nul ren "%%a" "%%~na.dds" ))) |
Отправлено: 13:53, 08-12-2010 | #21 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать 1. да вроде он итак должен искать в подкаталогах - см. "HELP FOR" для ключа /R:
Цитата:
|
|
Отправлено: 14:50, 08-12-2010 | #22 |
Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Понятно, а как по второму пункту:
Цитата Tosyk:
ДОБАВКА: возможно ли сделать конвертирование из мастер файла, т.е. не создавать для каждого типа свой файл *.new и *.old? ДОБАВКА2: Мне кажется нужно воспользоваться вашим предложением Цитата amel27:
Если сделать подстановку по диапазону размеров, то как будет скрипт выглядеть? ДОБАВКА3: А вы знаете каконибудь компилятор bat/cmd что при его выполнении не мелькало окошко cmd (что происходит в большинстве таких программ), а чтобы появлялось окошко с заполняющейся полоской, как при инсталяции? |
||
Последний раз редактировалось Tosyk, 09-12-2010 в 06:59. Отправлено: 14:53, 08-12-2010 | #23 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата Tosyk:
Цитата Tosyk:
Цитата Tosyk:
set DXT5_2048x2048_OLD=205344440000007C000A1007000008000000080000400000000000000000000C set DXT5_2048x2048_NEW=444453207C000000071008000008000000080000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000040000004458543500000000000000000000000000000000000000000010000000000000000000000000000000000000 Цитата Tosyk:
|
||||
Отправлено: 13:28, 09-12-2010 | #24 |
Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Цитата amel27:
|
|
Отправлено: 17:32, 09-12-2010 | #25 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Tosyk, мы уже обсудили три возможных подхода:
- на базе DD, библиотека шаблонов состоит из пар OLD/NEW файлов-заголовков; - на базе DD, библиотека шаблонов состоит из пар: NEW-заголовок-файл + размер OLD-файла; - на базе SFK, библиотека шаблонов состоит из пар HEX-переменных, описывающих NEW/OLD заголовки - определитесь с выбором, - сформируйте соответствующую библиотеку шаблонов (3-5 типов), - создайте тестовую структуру каталогов (хотя бы по 1 файлу каждого типа), - запакуйте и выложите в студию только в этом случае имеет смысл двигаться дальше и ваять готовый код Цитата Tosyk:
|
|
Отправлено: 11:29, 10-12-2010 | #26 |
Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Прошу прощения за задержку.
Выкладываю архив с библитекой шаблонов и тестовой структурой файлов. скачать тут Как я уже упомянал выше: можно ли использовать информацию о размере файлов для определения типа? вот что я исследовал: 4 kb - DXT1 64x64 12 kb - DXT1 128x128 44 kb - DXT1 256x256 171 kb - DXT1 512x512 172 kb - DXT1 512x512 342 kb - DXT5 512x512 683 kb - DXT1 1024x1024 684 kb - DXT1 1024x1024 1366 kb - DXT1 2048x1024 2732 kb - DXT1 2048x2048 Если ту же операцию можно повторить с помощью SFK, но только кодом, то это предпочтительнее. Посмотрел программы HTA/AutoIT/AHK, и что то не совсем понимаю, как с помощью них сделать простой прогресс-бар ( |
Последний раз редактировалось Tosyk, 14-12-2010 в 16:03. Отправлено: 15:36, 14-12-2010 | #27 |
Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Приветствую, прошу прощения за дабл-пост.
Уважаемый товарищ amel27, не хотелось бы останавливаться на пол пути. |
Отправлено: 03:41, 31-12-2010 | #28 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать Подскажите способ, как заменить в autorun.dll все совпадения "sources\setup.exe" на "sources\set86.exe" и(или) "Sources\setep.exe" на "Sources\set86.exe", с сохранением в новый файл.
|
Последний раз редактировалось sov44, 05-04-2023 в 08:28. Отправлено: 23:04, 21-10-2020 | #29 |
Забанен Сообщения: 793
|
sov44, про bsdiff\bspacth что-нибудь знаете? bspacth, к слову, в инсталляторе JRE используется даже.
|
Отправлено: 23:39, 22-10-2020 | #30 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Сравнение и замена в файлах .txt | Deep2007 | Скриптовые языки администрирования Windows | 4 | 19-11-2010 19:08 | |
Autoit работа в hex поиск offset'а | aktivizion | AutoIt | 3 | 14-03-2010 21:29 | |
C/C++ - Поиск текста в файлах | student_po | Программирование и базы данных | 6 | 04-09-2009 23:33 | |
Замена одной фразы в разных файлах | Punsher | Программное обеспечение Linux и FreeBSD | 3 | 11-03-2008 13:24 | |
Пакетная замена в html-файлах | y3ep | Программное обеспечение Windows | 7 | 11-06-2004 08:06 |
|