InsiderMedlem sedan jan. 2000978 inlägg Jag försöker skapa en bat-fil som tar alla .zip filer i en viss katalog och packar upp varje zip-fil till en ny katalog som heter samma sak som zip-filen.
Såhär långt har jag kommit. Problemet är att det skapas en hel katalogstruktur i unzip-katalogen. Går det att plocka ut själva filnamnet ur variabeln %%f ?? (som verkar innehålla hela sökvägen)
for %%f in (D:\test\*.zip) do C:\Program\WinZip\WINZIP32.EXE -e %%f D:\test\unzip\%%f\
DannyMedlem sedan juli 200412 913 inlägg hmm... vet inte riktigt hur det där funkar, men rent allmänt så i en batchfil om du har en variabel t ex %1 så om du stoppar in ett filnamn så hamnar det i variabeln, t ex:
skriv
@echo %1
och spara som t ex test.bat
om du sedan provar med
test variabel
så kommer variabeln att skrivas ut på skärmen.
Jag tror att din variabel helt enkelt blir fel och frågan är istället vad som händer innan din for-sats där?! ...hur kommer hela sökvägen till då?
InsiderMedlem sedan jan. 2000978 inlägg Sökvägen är statisk. Min kodrad utgör hela filen.
Variabeln %%f verkar innehålla hela filnamnet inklusive sökväg. Filerna packas upp till test\unzip\. men inte i test\unzip\filnamn, utan i test\unzip\d_\hela_sökvägen_\filnamn.zip
Jag vill plocka ut filnamnet ur %%f.
DannyMedlem sedan juli 200412 913 inlägg om du lägger till växeln "j" på winzip-kommandot då:
"winzip32 -e -j %%f" alltså. Fast då kanske alla sökvägar förstörs...
spangoMedlem sedan juni 20008 205 inlägg
Insider skrev:
Går det att plocka ut själva filnamnet ur variabeln %%f ?? (som verkar innehålla hela sökvägen)
CD:a till katalogen innan du gör nåt:
cd D:\test\
for %%f in (*.zip) do C:\Program\WinZip\WINZIP32.EXE -e %%f unzip\%%f\
Då varken vill eller behöver katalognamnet finnas med i expansionen av *. Vill du sluta i samma katalog som du började kan du använda pushdir/popdir.
InsiderMedlem sedan jan. 2000978 inlägg Nu kom nästa problem.
Jag vill kunna komprimera alla mappar i en viss katalog:
for %%f in (D:\zippa\) do C:\Program\WinZip\WINZIP32.EXE -a -r %%f.zip %%f
Winzip klagar på att den inte hittar några filer. Sen hamnar alla filer i alla underkataloger i en zip-fil.
Jag vill att varje mapp i katalogen zippa ska komprimeras till en egen zip.
Det verkar inte som att for-slingan kan loopa genom en uppsättning med kataloger. Bara filer...
InsiderMedlem sedan jan. 2000978 inlägg Snubblade över lösningen. :r
cd D:\zippa\
FOR [b]/D[/b] %%G in (*.*) DO C:\Program\WinZip\WINZIP32.EXE -a -r %%G.zip %%G
clxMedlem sedan sep. 200610 inlägg Commandline Support!
Varför inte installer WinZip Command Line Support Add-On...
Då har du ju alla funktioner...
Finns att ladda ner på Winzip
DannyMedlem sedan juli 200412 913 inlägg Varför inte installera WinRAR, RAR för DOS följer då med automatisk. Använder WinRAR för att zippa med själv :) Men ok, kör du bara zip så är det väl klart det är onödigt kanske.
colioneMedlem sedan juni 20014 421 inlägg för att kommandoradshackning ger så mycket mer tillbaka till livet!