
En mi prueba, mi estructura de carpetas es la siguiente:
D:\Data\1.db
D:\Data\2.db
D:\Data\3.db
D:\Data\FolderA\1.db
D:\Data\FolderA\2.db
D:\Data\FolderA\3.db
Este es un ejemplo simple de mi compleja situación en el mundo real. Estoy usando la lista de inclusión para hacer una copia de seguridad solo de los .db
archivos (y de muchos otros tipos de archivos), pero no quiero NINGÚN subdirectorio comprimido, pero es posible que no sepa los nombres de los subdirectorios.
Entonces, la pregunta es: ¿cómo comprimo archivos usando una lista de inclusión y excluyo todos los subdirectorios cuando se desconoce el nombre de los subdirectorios?
Intenté lo siguiente desde mi D:\Data
carpeta con los resultados entre paréntesis
7za a -t7z D:\Backups\data.zip -r- -ir@"D:\data\include.txt" :: (sub-dirs included)
Cambié la -r-
línea de arriba a la de abajo con los resultados entre paréntesis
-xr- [incorrect command line]
-xr-!* [nothing zipped]
-xr!* [nothing zipped]
Respuesta1
Encontré la respuesta citada a continuación. Si desea utilizar7 cremalleras, la parte complicada parece ser persuadirlo para que no vuelva a ocurrir; El modificador indicado en la documentación -r-
parece no funcionar y la solución sugerida por el autor del software es excluir subdirectorios con la expresión comodín -x!*/
en Linux y -x!*\
en Windows.