2016-03-23 1 views
0

J'ai une petite section d'un script batch windows que pour chaque fichier zip qu'il trouve, il le décompresse à un endroit précis, puis le supprime. Cela fonctionne très bien, mais je cherchais à le modifier alors quand il trouve un fichier zip, il faut l'extraire dans un nouveau dossier dans son dossier en cours nommé « nom .zip + actuel date-heure actuelle ». Mais je ne peux pas sembler obtenir ce travail, il semble que ce qu'il extrait dans le dossier parent à la recherche je précise au lieu du dossier où il se trouve.fenêtres batch décompressez dossier de recherche de l'emplacement de résultat

La raison de cette exigence est que le fichier .zip sera stocké dans un dossier différent chaque fois nommé d'après la construction, par exemple \ server \ g $ \ Dashboard \ Results \ NightlyBuild \ 25 \ alors je voudrais que le zip soit extrait dans ce même dossier.

for /f "tokens=1-3 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%b-%%a)
for /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)

for /R \\server\g$\Dashboard\Results\NightlyBuild\ %%f in (*.zip) do "C:\Program Files (x86)\WinZip\WZUNZIP.EXE" -d %%f "%%~nf-%mydate%-%mytime%\"

if ERRORLEVEL 0 for /R \\server\g$\Dashboard\Results\NightlyBuild\ %%f in (*.zip) do del %%f

Toute aide est grandement appréciée, merci!

+0

Vous voulez supprimer '/' de delims pour le temps. Et vous voulez 'tokens = 2,3' car l'étiquette descriptive a deux points, alors le token 1 est' l'heure actuelle '. –

+0

Merci @Noodles, a du sens. Juste besoin d'extraire à son emplacement actuel maintenant – adjuzy

+0

'%% ~ dpf' est le dossier contenant le zip. Voir 'pour /?'. –

Répondre

0

Comme @Noodles a souligné dans les commentaires ci-dessus, %%~dpf est le dossier contenant le zip.