
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).
Respuesta2
Es 7-zip el que produce el mensaje. Parece el-y
cambiarpara 7z.exe
hace 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 -y
después de la ruta proporcionada a 7z.exe
.