Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Specifying zip file for batch execution

so im pretty new to batch here and im attempting to make an auto installer for some modifications that need to be done to a jar.

it will execute when i drag the file over but im not sure how to tell it to execute the file wihtout draggin it over and dropping

so you know the 7za app is used to extract and as i said this works if i drag and drop for the file i want forge.zip to unpack and inject into the minecraft.jar

set_source=%APPDATA%\Roaming\.minecraft\bin\forge.zip
set path="%USERPROFILE%";%path%
move 7za.exe %USERPROFILE%
cd %USERPROFILE%
7za x AppData\Roaming\.minecraft\bin\minecraft.jar -oAppData\Roaming\.minecraft\bin\TempStuff\
7za x %* -oAppData\Roaming\.minecraft\bin\TempStuff\ -y
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin\TempStuff\
rmdir /S /Q META-INF
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
ren minecraft.jar "minecraft_c.jar"
cd %USERPROFILE%
7za a -r minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft     \bin\TempStuff\* -o%USERPROFILE%\AppData\Roaming\.minecraft\bin
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
rmdir /S /Q TempStuff
cd %USERPROFILE%
move /y %USERPROFILE%\minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft\bin
pause

this is supposed to overwrite the core files in a jar to allow for the modified ones. to take hold yes i did look at soemone elses replace code but i think i screwed up somewhere... :(

solution

set path="%USERPROFILE%";%path%
move 7za.exe %USERPROFILE%
cd %USERPROFILE%
7za x AppData\Roaming\.minecraft\bin\minecraft.jar -oAppData\Roaming\.minecraft\bin\TempStuff\
7za x "%USERPROFILE%\AppData\Roaming\.minecraft\JarMods\*.zip" -oAppData\Roaming\.minecraft\bin\TempStuff\ -y
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin\TempStuff\
rmdir /S /Q META-INF
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
ren minecraft.jar "minecraft_c.jar"
cd %USERPROFILE%
7za a -r minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft\bin\TempStuff\* -o%USERPROFILE%\AppData\Roaming\.minecraft\bin
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
rmdir /S /Q TempStuff
cd %USERPROFILE%
move /y %USERPROFILE%\minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft\bin
cd %APPDATA%\Roaming\.minecraft
mkdir mods
move "%USERPROFILE%\<insert ModInstall path here>\OtherMods\"       %USERPROFILE%\AppData\Roaming\.minecraft\mods
like image 553
user2554653 Avatar asked Dec 20 '25 06:12

user2554653


1 Answers

The author came up with the solution but hasn't been back to SO since, so his solution is now going to be put in here:

set path="%USERPROFILE%";%path%
move 7za.exe %USERPROFILE%
cd %USERPROFILE%
7za x AppData\Roaming\.minecraft\bin\minecraft.jar -oAppData\Roaming\.minecraft\bin\TempStuff\
7za x "%USERPROFILE%\AppData\Roaming\.minecraft\JarMods\*.zip" -oAppData\Roaming\.minecraft\bin\TempStuff\ -y
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin\TempStuff\
rmdir /S /Q META-INF
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
ren minecraft.jar "minecraft_c.jar"
cd %USERPROFILE%
7za a -r minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft\bin\TempStuff\* -o%USERPROFILE%\AppData\Roaming\.minecraft\bin
cd %USERPROFILE%\AppData\Roaming\.minecraft\bin
rmdir /S /Q TempStuff
cd %USERPROFILE%
move /y %USERPROFILE%\minecraft.jar %USERPROFILE%\AppData\Roaming\.minecraft\bin
cd %APPDATA%\Roaming\.minecraft
mkdir mods
move "%USERPROFILE%\<insert ModInstall path here>\OtherMods\"       %USERPROFILE%\AppData\Roaming\.minecraft\mods
like image 64
Lizz Avatar answered Dec 22 '25 22:12

Lizz



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!