|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Скрипт для создания деинсталлятора файлов в папке. |
|
Любой язык - [решено] Скрипт для создания деинсталлятора файлов в папке.
|
Новый участник Сообщения: 7 |
Добрый день.
1) Напишите пожалуйста скрипт, чтобы он создавал скрипт для удаления всех файлов в папке, которую я указываю. 2) Как сделать, чтобы этот скрипт можно было запускать через клик правой кнопкой мыши по папке? |
|
Отправлено: 07:56, 12-09-2010 |
Ветеран Сообщения: 1273
|
Профиль | Отправить PM | Цитировать Цитата Corsag21:
Цитата Corsag21:
|
||
Отправлено: 14:43, 12-09-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 7
|
Профиль | Отправить PM | Цитировать Извиняюсь, не совсем ясно выразился. Этот скрипт мне нужен для удобного удаления плагинов в tes4 oblivion. Все плагины кидаются в папку Data, и если нужно удалить один плагин, то приходится искать все файлы, которые относятся к плагину и удалять их по отдельности, тем более они находятся в разных подпапках. Поэтому мне бы хотелось, чтобы до копирования плагина я мог сделать скрипт .bat или типа того такого вида:
del \meshes\dungeons\AyleidRuins\exterior\OOOardoor01Varastal.nif del \Textures\dungeons\misc\OOOSpawnFishCrates\duncrate01OOO.dds и т. д. для всех файлов в нужной папке. |
Отправлено: 16:49, 12-09-2010 | #3 |
Ветеран Сообщения: 1273
|
Профиль | Отправить PM | Цитировать Corsag21, понятно.
Так как я не знаю вашей ОС, то предложу 2 варианта - для WinXP и Win7(/Vista?) Для XP: @Echo Off Set DataDir=C:\Program Files\Oblivion\Data Set SourcePlugin=C:\Installs\Games\Oblivion\OblivionPatches :: ================================ Set DataDir=%DataDir:(=^^^^(% Set DataDir=%DataDir:)=^^)% SetLocal EnableDelayedExpansion For /D %%A In ("%SourcePlugin%\*") Do ( Echo @Echo Off>"%%A\Install %%~nA.bat" Echo Reg Query "HKCR\Directory\shell\DeletePlugin_%%~nA" /v Extended 1^>nul 2^>^&1^&^&GoTo :UnInstall^|^|GoTo :Install>>"%%A\Install %%~nA.bat" Echo.>>"%%A\Install %%~nA.bat" Echo :Install>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugin_%%~nA" /v MUIVerb /d "Удалить плагин %%~nA" /f 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugin_%%~nA" /v Extended /f 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugin_%%~nA\command" /ve /d "\"%DataDir%\Uninstall %%~nA.bat\"" 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo Ren %%0 "Uninstall %%~nA%%~x0">>"%%A\Install %%~nA.bat" Echo GoTo :EOF>>"%%A\Install %%~nA.bat" Echo.>>"%%A\Install %%~nA.bat" Echo :UnInstall>>"%%A\Install %%~nA.bat" For /F "Tokens=*" %%B In ('Dir /B /S /A-D "%%A" 2^>nul') Do ( Set SourceFilePath=%%B Call Set DestFilePath=%%SourceFilePath:%%A=%DataDir%%% If /I Not "%%~nB"=="Install %%~nA" Echo Del /F /Q "!DestFilePath!" ^>nul>>"%%A\Install %%~nA.bat" ) Echo Reg Delete "HKCR\Directory\shell\DeletePlugin_%%~nA" /f 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo Del /F /Q %%0 ^>nul>>"%%A\Install %%~nA.bat" ) @Echo Off Set DataDir=C:\Program Files\Oblivion\Data Set SourcePlugin=C:\Installs\Games\Oblivion\OblivionPatches :: ================================ Set DataDir=%DataDir:(=^^^^(% Set DataDir=%DataDir:)=^^)% SetLocal EnableDelayedExpansion For /D %%A In ("%SourcePlugin%\*") Do ( Echo @Echo Off>"%%A\Install %%~nA.bat" Echo Reg Query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\CommandStore\shell\%%~nA" /v Icon 1^>nul 2^>^&1^&^&GoTo :UnInstall^|^|GoTo :Install>>"%%A\Install %%~nA.bat" Echo.>>"%%A\Install %%~nA.bat" Echo :Install>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugins" /v MUIVerb /d "Удалить плагины Oblivion" /f ^>nul>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugins" /v Extended /f ^>nul>>"%%A\Install %%~nA.bat" Echo Reg Query "HKCR\Directory\shell\DeletePlugins" /v SubCommands 1^>nul 2^>^&1^&^&^(^^>>"%%A\Install %%~nA.bat" Echo For /F "Tokens=2*" %%%%I In ^('Reg Query "HKCR\Directory\shell\DeletePlugins" /v SubCommands^^^|Find "REG_SZ" 2^^^>nul'^) Do ^^>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugins" /v SubCommands /d "%%%%J;%%~nA" /f 1^>nul 2^>nul^)^|^|^(^^>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugins" /v SubCommands /d "PDFViewer" /f 1^>nul 2^>nul^)>>"%%A\Install %%~nA.bat" Echo Reg Add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\CommandStore\shell\%%~nA" /ve /d "Удалить %%~nA" /f ^>nul>>"%%A\Install %%~nA.bat" Echo Reg Add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\CommandStore\shell\%%~nA" /v Icon /d "shell32.dll,-240" /f ^>nul>>"%%A\Install %%~nA.bat" Echo Reg Add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\CommandStore\shell\%%~nA\command" /ve /d "\"%DataDir%\Uninstall %%~nA.bat\"" /f ^>nul>>"%%A\Install %%~nA.bat" Echo Ren %%0 "Uninstall %%~nA%%~x0">>"%%A\Install %%~nA.bat" Echo GoTo :EOF>>"%%A\Install %%~nA.bat" Echo.>>"%%A\Install %%~nA.bat" Echo :UnInstall>>"%%A\Install %%~nA.bat" For /F "Tokens=*" %%B In ('Dir /B /S /A-D "%%A" 2^>nul') Do ( Set SourceFilePath=%%B Call Set DestFilePath=%%SourceFilePath:%%A=%DataDir%%% If /I Not "%%~nB"=="Install %%~nA" Echo Del /F /Q "!DestFilePath!" ^>nul>>"%%A\Install %%~nA.bat" ) Echo Reg Delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\CommandStore\shell\%%~nA" /f 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo For /F "Tokens=2*" %%%%I In ^('Reg Query "HKCR\Directory\shell\DeletePlugins" /v SubCommands^^^|Find "REG_SZ" 2^^^>nul'^) Do Set SubCommand=%%%%J>>"%%A\Install %%~nA.bat" Echo Set SubCommand=%%SubCommand:%%~nA=;%%>>"%%A\Install %%~nA.bat" Echo Set SubCommand=%%SubCommand:;;;=;%%>>"%%A\Install %%~nA.bat" Echo Set SubCommand=%%SubCommand:;;=;%%>>"%%A\Install %%~nA.bat" Echo If "%%SubCommand%%"==";" ^(Reg Delete "HKCR\Directory\shell\DeletePlugins" /f 1^>nul 2^>nul^&Del /F /Q %%0 ^>nul^)>>"%%A\Install %%~nA.bat" Echo If Not "%%SubCommand%%"==";" ^(>>"%%A\Install %%~nA.bat" Echo SetLocal EnableDelayedExpansion>>"%%A\Install %%~nA.bat" Echo If "^!SubCommand:~0,1^!"==";" Set SubCommand=^^!SubCommand:~1^^!>>"%%A\Install %%~nA.bat" Echo If "^!SubCommand:~-1^!"==";" Set SubCommand=^^!SubCommand:~0,-1^^!>>"%%A\Install %%~nA.bat" Echo Reg Add "HKCR\Directory\shell\DeletePlugins" /v SubCommands /d "^!SubCommand^!" /f 1^>nul 2^>nul>>"%%A\Install %%~nA.bat" Echo Del /F /Q %%0 ^>nul^)>>"%%A\Install %%~nA.bat" )
З.Ы. Надеюсь, понятно объяснил. ![]() З.Ы.Ы. Легче полноценный инсталлятор написать, чем инсталлятор на батниках ![]() |
Отправлено: 11:06, 14-09-2010 | #4 |
Новый участник Сообщения: 7
|
Профиль | Отправить PM | Цитировать Спасибо
|
|
Отправлено: 17:58, 14-09-2010 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Скрипт создания ссылки, для GPO | bombording | Скриптовые языки администрирования Windows | 6 | 27-09-2012 13:37 | |
VBS/WSH/JS - [решено] wsh-скрипт для создания сетевой папки | vdereberya | Скриптовые языки администрирования Windows | 11 | 09-08-2010 22:21 | |
Любой язык - Батник (скрипт) для создания odbc | ITSpec | Скриптовые языки администрирования Windows | 2 | 09-12-2009 10:32 | |
Скрипт для создания пользователей | Ven | Microsoft Windows NT/2000/2003 | 6 | 24-02-2008 23:57 | |
Для создания МПЗ файлов | Trialist | Видео и аудио: обработка и кодирование | 6 | 15-09-2006 20:10 |
|