Quiero copiar la estructura de mi directorio excluyendo los archivos. ¿Hay alguna opción en el tar para ignorar todos los archivos y copiar solo los Directorios recursivamente?Tar solo la estructura de Directorio
Respuesta
for i in `find . -type d`; do mkdir -p /tmp/tar_root/`echo $i|sed 's/\.\///'`; done
pushd /tmp/tar_root
tar cf tarfile.tar *
popd
# rm -fr /tmp/tar_root
Puede utilizar Buscar para obtener los directorios y luego alquitrán ellos:
find .. -type d -print0 | xargs -0 tar cf dirstructure.tar --no-recursion
Si usted tiene más de alrededor de 10.000 directorios usar lo siguiente para evitar xargs límites:
find . -type d -print0 | tar cf dirstructure.tar --null --files-from - --no-recursion
vaya a la carpeta en la que desea comenzar (es por eso que utilizamos find dot) guarde el archivo tar en otro lugar. Creo que tengo un error dejándolo allí mismo. alquitrán con r no c. Creo que con cf sigues creando nuevos archivos y solo obtienes el último conjunto de subdirectorios de archivos. tar r se agrega al archivo tar. --no-recursión porque el find te está dando toda tu lista de archivos ya por lo que no querrás recurse.
buscar. -type d | xargs tar rf /somewhereelse/whatever-dirsonly.tar --no-recursión
tar tvf /somewhereelse/whatever-dirsonly.tar | más para comprobar lo que tienes.
Los nombres de directorio que contienen espacios u otros caracteres especiales pueden requerir atención adicional. Por ejemplo:
$ mkdir -p "backup/My Documents/stuff"
$ find backup/ -type d | xargs tar cf directory-structure.tar --no-recursion
tar: backup/My: Cannot stat: No such file or directory
tar: Documents: Cannot stat: No such file or directory
tar: backup/My: Cannot stat: No such file or directory
tar: Documents/stuff: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
Estas son algunas variaciones para manejar estos casos de nombres de directorio "inusuales":
$ find backup/ -type d -print0 | xargs -0 tar cf directory-structure.tar --no-recursion
Usando -print0 con find emitirá nombres de archivo como cadenas terminadas en cero; con -0 xargs interpretará los argumentos de la misma manera. Usar null como terminador ayuda a garantizar que incluso los nombres de archivo con espacios y líneas nuevas se interpretarán correctamente.
También es posible que los resultados de tubería recta desde find
a tar
:
$ find backup/ -type d | tar cf directory-structure.tar -T - --no-recursion
La invocación de alquitrán con -T - (o --files-de -) hará que se lea los nombres de archivo de la entrada estándar , esperando que cada nombre de archivo esté separado por un salto de línea.
Para el efecto máximo se puede combinar con opciones para cadenas terminadas en cero:
$ find . -type d -print0 | tar cf directory-structure.tar --null --files-from - --no-recursion
De éstos Considero que esta última versión a ser el más robusto, ya que es compatible con los nombres de archivo inusuales y (a diferencia de xargs) no está intrínsecamente limitado por los tamaños de línea de comando del sistema. (Consulte xargs --show-limits
)
- 1. Extraer solo un directorio de tar
- 2. Crear archivo tar sin estructura de carpeta
- 3. ¿Cómo identifico un directorio sin conservar la estructura del directorio?
- 4. Comparar el archivo tar del directorio con el directorio original
- 5. Descomprime el archivo tar en el directorio
- 6. Directorio de desarrollo Estructura
- 7. ¿Cómo extraer un solo archivo de tar a un directorio diferente?
- 8. Listando el contenido de un archivo tar o un directorio solo hasta algún nivel
- 9. Android Maven Directorio Estructura
- 10. Estructura de directorio de Django?
- 11. Estructura del directorio de Octopress
- 12. Estructura del directorio de caché
- 13. Estructura de directorio para MVC
- 14. Comando Linux tar: compresión de un directorio pero con subdirectorios
- 15. Cómo crear archivo tar plana
- 16. Modificación de la estructura del directorio en Subversion
- 17. Estructura de directorio de interfaces Java?
- 18. Estructura de directorio de Python TDD
- 19. ir a la ruta y luego tar?
- 20. ¿Debería Copy-Item crear la estructura de directorio de destino?
- 21. Almacenar una estructura de directorio en la base de datos
- 22. Nant <copy> y mantener la estructura del directorio
- 23. ¿Estructura del árbol del directorio de la lista en python?
- 24. Bash: cómo atravesar la estructura del directorio y ejecutar comandos?
- 25. Copiar archivos preservando la estructura del directorio con rastrillo
- 26. Ruby streaming tar/gz
- 27. Estructura de la memoria de un objeto que solo funciona?
- 28. Tamaño de estructura con un solo elemento
- 29. Estructura del directorio del proyecto django y la ruta python
- 30. ¿Configurando la estructura del directorio del proyecto EmberJS?
necesita un automóvil de 10 segundos? :) – mschr