Fichier 7z ne s'écrit pas dans le bon répertoire - batch file

Résolu
Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à toutes et tous

Désolé si je n'écris pas ce post dans la bonne rubrique, ça me semblait être le plus cohérent.

Voilà mon problème: j'utilise une commande 7zip pour archiver des fichiers préalablement copiés depuis un emplacement réseau d'après toute une série de critères. Cette partie de sélection et de copie fonctionne parfaitement mais lorsque je souhaite archiver ce résultat le fichier crée ne se fait pas dans le répertoire que j'ai spécifié dans ma commande mais dans le répertoire où se trouve rangé mon code (un .bat).
C'est à dire que j'ai par exemple 120 fichiers à archiver dans le répertoire C:Usersdocumentslivraisons et que le script que je lance depuis D:commandescriptscript_zipage.bat archive non pas le contenu de C:[...] mais de D:[...] et écrit ce fichier .7z dans ce même répertoire.

Quelqu'un saurait il m'expliquer pourquoi je rencontre ce pb et comment y remédier ?

Je travaille sur win 7 et 10 64bit

Voici le code utilisé pour ziper
@echo off

echo compression en fichier zip

set chemin=D:commandesortophotographiesJP2epci241300375

pause
set /p zip_out="Entrez le nom du fichier zip : " > F:commande_ortho_jp2loglog_commande.txt
cd %chemin%
pause
7z a "%zip_out%.7z" > F:commande_ortho_jp2loglog_commande.txt
pause
echo END
A voir également:

1 réponse

barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Tu n'es pas positionné dans C:Usersdocumentslivraisons donc forcément ça ne peut pas marcher.

Pour te positionner :
@echo off

echo compression en fichier zip

set chemin=C:Usersdocumentslivraisons

pause
set /p zip_out="Entrez le nom du fichier zip : " > F:commande_ortho_jp2loglog_commande.txt
cd /d %chemin%
pause
7z a "%zip_out%.7z" > F:commande_ortho_jp2loglog_commande.txt
pause
echo END
0
Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour

Merci pour ta réponse

Les chemins que je mentionne dans mon résumé sont fictifs. Les bons sont ceux du code.

D'ailleurs je me rend compte que tous les "\" ne sont pas passés dans mes chemins d'accès lors de mon copier coller.

Du coup en les mettant bien ça donne ça:

echo compression en fichier zip

set chemin=D:\commandes\ortophotographies\JP2\248300410\

pause
set /p zip_out="Entrez le nom du fichier zip : " > F:\commande_ortho_jp2\log\log_commande.txt

pause
cd %chemin%
pause
7z a "%zip_out%.7z" > F:\commande_ortho_jp2\log\log_commande.txt
pause
echo END
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Ok, problème résolu ?
0
Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
ah j'avais pas vu le "/d" que tu as rajouté dans la ligne cd %chemin% je vais essayer avec ça.
0
Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Avec le /d ca fonctionne

Super merci beaucoup j'aurai jamais trouvé ce point de détail #JeDébute

Bonne continuation :)
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Che54 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Merci bonne continuation également !

A bientôt peut-être.
0