7zip: comment extraire en sortie std?


28

J'ai 7z 4.65 et j'essaye d'extraire un seul fichier vers la sortie standard. L'aide de la ligne de commande 7z dit que -soc'est le paramètre de ligne de commande à extraire vers la sortie standard, mais quand j'essaye ceci:

>>> 7z e -so dist\dlogpkg.jar META-INF/MANIFEST.MF

7-Zip 4.65  Copyright (c) 1999-2009 Igor Pavlov  2009-02-03
Error:
I won't write data and program's messages to same terminal

Comment puis-je réparer cela? Il ne semble pas y avoir de paramètre de ligne de commande pour supprimer les messages stdout 7z normaux.

(edit: l'opération équivalente dans "décompresser" serait

unzip -p dist\dlogpkg.jar META-INF/MANIFEST.MF

qui fonctionne bien. Mais j'aimerais utiliser 7z pour diverses raisons.)

Réponses:


17

le diriger vers un autre programme tel que

  • tee
  • Moins
  • plus

Je pense que cela teese rapproche le plus de ce que vous voulez, il laisse tomber le 7z et vous donne juste le contenu.

% 7z e -so dist\dlogpkg.jar META-INF/MANIFEST.MF | tee

Y a-t-il une raison particulière pour laquelle vous pensez que teec'est mieux dans cette situation que less?
Andy

Impair. "moins" et "tee" font ce que j'attends, mais "plus" laisse dans les trucs 7z .... bizarre! pourquoi fait-il ça?
Jason S

@Andy: "tee" fait encore moins que "less" .. pas de défilement en arrière, etc. il laisse simplement passer les octets et rien de plus.
akira

@akira peut-être qu'il voulait diriger la sortie vers un autre programme
beppe9000

@Andy: pourquoi OP voulait diriger vers la sortie standard n'a jamais été une question.
akira

8

Sous Windows, 7z x -so my_file.zip 2> NULcela ne fonctionne pas, mais la redirection vers un vrai fichier aide:

7z x -so my_file.zip 2> _garbage.txt

7

J'essayais également de comprendre cela. Cela m'a donné ce que je voulais:

7z x -so my_file.zip 2> /dev/null

1
L'équivalent Windows 7z x -so my_file.zip 2> NULne fonctionne pas: redirige également les données vers null.
ansgri
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.