J'ai un fichier batch qui génère un fichier texte. Je pensais que ce serait bien si je pouvais aussi le compresser.
Ceci sera utilisé dans un environnement non contrôlé, donc je ne peux pas faire d'hypothèses sur la présence de produits logiciels tiers tels que 7-Zip, etc. Il est nécessaire d'utiliser la capacité de compression de fichiers intégrée à Windows.
1 votes
Pouvez-vous utiliser PowerShell ou un script WSH ? Cela pourrait être le seul moyen d'utiliser la gestion intégrée des fichiers zip de Windows en ligne de commande. Sinon, comme l'a souligné Molly, vous aurez besoin d'un outil tiers.
2 votes
Ainsi, vous envoyez à quelqu'un un fichier batch et vous ne pouvez pas lui envoyer un petit fichier gzip.exe statiquement lié ?
0 votes
La question de l'OP est excellente (accusation étrange de @quackquixote mise à part). Puisque Windows fournit cela en un seul clic sous SendTo, il devrait y avoir une commande utilisable dans un fichier BAT. C'est donc une bonne question même si la réponse est non et qu'il faut (ridiculement) recourir à l'utilisation d'un outil tiers qui peut être équivalent ou non.
0 votes
Ceci est lien par Tomas a un script bien écrit pour zipper le contenu d'un dossier. Pour le faire fonctionner, il suffit de copier le script dans un fichier batch et de l'exécuter en spécifiant le dossier à zipper (source). Pas besoin de mentionner le répertoire de destination car il est défini par défaut dans le script sur le bureau ("%USERPROFILE%\Desktop").
4 votes
Le plus simple serait, dans une invite de commande :
powershell.exe Compress-Archive fichier-à-compresser.txt fichier-comprimé.zip
(cela fonctionne également avec un dossier)0 votes
Cette question est maintenant liée depuis SS64! (SS64 est une référence de premier plan.)