Si j'ai une archive, par exemple, some.Zip
contenant un ou plusieurs fichiers, comment puis-je extraire un seul fichier (je connais le nom du fichier) avec 7-Zip à partir de la ligne de commande sous Windows?
En guise de suivi de la réponse de surfasb , ajoutez un drapeau -r à la fin pour rappeler:
7z e [archive.Zip] -o[outputdir] [fileFilter] -r
Plusieurs filtres prennent en charge:
7z e [archive.Zip] -o[outputdir] [fileFilter_1] [fileFilter_2] -r
Exemple:
Plusieurs filtres en ligne de commande:
7z e archive.Zip -o outputdir *.xml *.dll -r
PS: J'utilise 7za.exe au lieu de 7z.exe. Voici la commande que j'utilise dans mon script:
7za.exe x archive.Zip -o outputdir *.xml *.pdb *.exe *.ocx *.dll -r
Vous ajoutez simplement le nom de fichier à la fin.
7z e [archive.Zip]
- o [outputdir] [fileFilter]
Si vous consultez la page de manuel pour 7z, vous constaterez que la commande suivante peut être utilisée pour extraire un fichier d'une archive 7z (bien que l'utilisation de le chemin manque dans la page de manuel):
7z x <archive> <path to file>
Exemples:
7z x backup.7z *.html
7z x backup.7z folderwithin/myfile.html
Sinon, vous pouvez utiliser e
.
Le guide de l'utilisateur version en ligne de commande semble contenir davantage d'informations sur l'utilisation réelle.
Notez que 7z
a la syntaxe suivante (observer les espaces et les guillemets entourant l’option "-oMy Folder"
pour définir le nom du dossier de sortie, m’a pris des heures à comprendre, comme je l’ai fait à l’origine - dans le mauvais sens: * -o "My Folder"
*):
7z e "my Zip.zip" "-oMy Folder" *.jpg "all of these.*" -r