batch-Skript zum Komprimieren eines Ordners ohne Verwendung externer Software
Ich habe Ordner mit der folgenden Struktur
folder Unterordner (leer) Unterordner file1.bat file2.bat file3.bat
Wie schreibe ich eine Batch-Datei, um den Inhalt des obigen Ordners zu komprimieren, ohne externe Software wie winrar oder 7zip zu verwenden?
Ich habe den folgenden Code ausprobiert. Der Inhalt wird jedoch ohne den leeren Ordner in den angegebenen temporären Ordner kopiert, und beim Versuch, den Ordner zu komprimieren, werden nur Datei1 und Datei2 komprimiert und der Rest des Inhalts ignoriert.
Ich möchte in der Lage sein, den Ordner so zu komprimieren, wie er ist, ohne die Struktur zu beeinflussen.
Ich konnte den Grund für das Problem nicht finden. Jede Hilfe wird gebeten.
set FILETOZIP=D:\OutputZipFiles\TestWorkDemo
set TEMPDIR=D:\OutputZipFiles\TempDir
rmdir %TEMPDIR%
mkdir %TEMPDIR%
xcopy /s %FILETOZIP% %TEMPDIR%
echo Set objArgs = WScript.Arguments > _zipIt.vbs
echo InputFolder = objArgs(0) >> _zipIt.vbs
echo, ZipFile = objArgs(1) >> _zipIt.vbs
echo CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" ^& Chr(5) ^& Chr(6) ^& String(18, vbNullChar) >> _zipIt.vbs
echo Set objShell = CreateObject("Shell.Application") >> _zipIt.vbs
echo Set source = objShell.NameSpace(InputFolder).Items >> _zipIt.vbs
echo objShell.NameSpace(ZipFile).CopyHere(source) >> _zipIt.vbs
echo wScript.Sleep 2000 >> _zipIt.vbs
CScript _zipIt.vbs %TEMPDIR% D:\OutputZipFiles\someArchive.zip
pause