web-dev-qa-db-fra.com

Extraire un certain fichier d'une archive avec 7-Zip à partir de la ligne de commande

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?

29
Kiesoo

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
28
zionyx

Vous ajoutez simplement le nom de fichier à la fin.

7z e [archive.Zip] - o [outputdir] [fileFilter]

12
surfasb

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.

3
Todd Partridge

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
0
Albert Marenčin