Script batch tramite 7zip: Voglio che i file zip abbiano il nome come file originale


0

Ho pochissima esperienza nella creazione di file .bat - ho diversi file .bak che devo comprimere - questa directory ottiene nuovi file .bak rilasciati regolarmente. Sto cercando di impostare un lavoro che verifica la presenza di file .bak e li comprime, voglio passare il nome del file .bak in modo che il file .zip abbia lo stesso nome del file .bak.

Quindi TestFile1.bak = TestFile1.zip, TestFile2.bak = TestFile2.zip ... ecc

Ho questo finora e funziona per comprimere solo un singolo file, o comprime molti file .bak in un file single.zip. Non riesco a capire come passare il nome del file .bak.

7za a -tzip "C: \ TestArchive \ AutoArchived \" "C: \ TestArchive *. *" -Mx5

Risposte:


0

Ciò che potrebbe aiutarti, è il comando FOR.

for /f "delims=#" %%i in ('dir /b *.bak') do ( 
  echo now working on file %%i
  rem use %%i in the 7zip command to compress only one file
)

Questo eseguirà il ciclo di tutti i file restituiti dal comando dir. Con ogni ciclo %% conterrò un file che è possibile utilizzare per il comando 7zip.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.