¿Cómo extraigo todos los archivos en los subdirectorios de esta carpeta?

¿Cómo extraigo todos los archivos en los subdirectorios de esta carpeta?

Investigué este título y me dieron la respuesta del siguiente archivo CMD:

FOR /D /r %%F in ("*") DO (
    pushd %CD%
    cd %%F
           FOR %%X in (*.rar *.zip) DO (
        "C:\Program Files\7-zip\7z.exe" x %%X
           )
    popd
)

El archivo cmd funciona muy bien hasta cierto punto. Excepto que muestra el siguiente mensaje para cada archivo encontrado con la extensión "ZIP" y pregunta:

Would you like to replace the existing file:
Path xxxxxx
Size xxxx
Modified: XXXXXXX
with the file from the archive:
Path: xxxx
Size: xxxxx
? Y<es> \ N<o> \ A<lways> \ S<kip all> \A<u>to rename all \ <Q>uit 

Se detiene ahí esperando una entrada. Pero pregunta cada vez que se descomprime un archivo. Iba a modificar el archivo de comando anterior con algo que verifique si ?se encuentra y luego llame a un archivo cmd de respuesta que genere una "Y" y luego salga, lo que me llevaría de regreso al archivo de comando original para procesar el siguiente archivo con el "zip" encontró.

No sé si estoy en el camino correcto pero agradecería algo de ayuda. No sé qué programa genera el ?texto y. ¿Es Windows 7 o es 7-zip lo que pregunta?

Respuesta1

No sé qué programa genera el mensaje "?" y texto

Es 7z.exe.

El modificador correcto a utilizar es -aoa(Sobrescribir todos los archivos existentes sin que se le solicite).

Ejemplo:

"C:\Program Files\7-zip\7z.exe" x %%X -aoa

-ao (modo de sobrescritura)

Especifica el modo de sobrescritura durante la extracción, para sobrescribir archivos que ya están presentes en el disco.

Syntax

-ao[a | s | t | u ]

Switch    Description
-aoa  Overwrite All existing files without prompt.
-aos  Skip extracting of existing files.
-aou  aUto rename extracting file (for example, name.txt will be renamed to name_1.txt).
-aot  auto rename existing file (for example, name.txt will be renamed to name_1.txt).

Fuente-ao (modo de sobrescritura)

Respuesta2

Es 7-zip el que produce el mensaje. Parece el-ycambiarpara 7z.exehace lo que quieres:

Se suprimirán todas las consultas de sobrescritura y se sobrescribirán los archivos en el disco con los mismos nombres que en el archivo.

El ejemplo de la documentación indica que debes colocarlo -ydespués de la ruta proporcionada a 7z.exe.

información relacionada