¿Por qué RoboCopy crea una carpeta oculta del sistema?

10

Pensé que probaría RoboCopy para reflejar el contenido de una carpeta en otro disco duro. Y parece que funcionó. Pero, por alguna razón, para ver la carpeta de destino tengo que habilitar Mostrar archivos, carpetas y unidades ocultas y desactivar Ocultar archivos protegidos del sistema operativo . ¿Por qué es esto? Tanto la carpeta de origen como la de destino eran inicialmente directorios visibles y normales. Cuando abro las propiedades para esa carpeta de destino, el atributo Oculto está incluso deshabilitado. ¿Que esta pasando aqui?

¿Es porque lo ejecuté en un símbolo del sistema del administrador? ¿O es un problema con mi elección de modificadores? ¿O la robocopia realmente funciona de esta manera?

robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA

Actualización: Intenté copiar otra unidad en otra carpeta, y allí sucedió lo mismo. Pero cuando trato de copiar una carpeta a una carpeta diferente, la carpeta de destino permanece normal. ¿Podría ser porque copio una unidad? Si es así, ¿cómo puedo evitar que esto suceda? Porque realmente quiero copiar todo el disco ...

Svish
fuente
Crear el directorio antes de tiempo no funciona. Tan pronto como ejecute la copia robo nuevamente, los atributos una vez más la ocultan. El comando de atributo funciona.

Respuestas:

9

En mi sistema (Vista), powershell muestra que la unidad c: \ tiene los atributos ocultos y de sistema establecidos.

    PS C:\Users\michael.DOMAIN> Get-Item c:\


    Directory:


Mode           LastWriteTime       Length Name
----           -------------       ------ ----
d--hs     8/18/2009 12:19 PM        <DIR> C:\

Después de copiar los archivos, puede usar attrib para arreglarlos. Echa un vistazo a attrib /? para detalles.

M Aguilar
fuente
Hm, sí, mis tres discos duros también tienen esos atributos ... Lo extraño es que mis discos D y E obtuvieron una carpeta oculta del sistema cuando los robé a carpetas en un disco externo, mientras que el disco C no Oo No entiendo esto ...
Svish
Tengo el mismo problema con un recurso compartido de red oculto ( $). Corrí Get-Itemen ese recurso compartido y también dice, ¡ d--hsasí que supongo que esa es la razón! ¡Gracias!
Chris Haas
Esto también puede ser cierto para los recursos compartidos de red en general, como en nuestro cuadro Synology NAS, que marca \\ nas \ sharename como una carpeta oculta. Cuando copia esa carpeta con robocopy con / copyall o / COPY: xAxxxx que incluye los atributos (A), la carpeta de destino se crea con los mismos atributos que la fuente.
BeowulfNode42
9

Tiene que ver con copiar la información de volumen del sistema oculto / del sistema desde la raíz de un disco; si se copia, el directorio de destino obtiene los mismos atributos sistema / oculto.

Crear el directorio antes de copiar no ayuda, ya que robocopy también lo ocultará.

Agregue el /A-:SHinterruptor para ignorar los archivos del sistema.

Más información en esta discusión de Microsoft Technet .

xcxc
fuente
6

También me he encontrado con este problema. Parece que esta carpeta oculta aparece cuando el directorio de origen es una raíz de la unidad, por ejemplo. D:\o F:\. Estas carpetas contendrán el sistema y los atributos ocultos, y al ser una carpeta raíz de origen, el attrib -s -hcomando no puede eliminarla .

En este ejemplo, F:\es la fuente G:\es el destino.

Puede ver los atributos en PowerShell. Verá el modo d--hsde directorio, oculto y sistema. Prueba el get-itemcomandoC:\> Get-Item F:\

Robocopy supuestamente no lo creará como una carpeta oculta si la carpeta existe. He leído en algunas publicaciones que usar un /CREATEa hará el truco, o puede crear las carpetas manualmente antes de tiempo. Tengo que hacer más pruebas, así como otras combinaciones para verificar esto completamente.

De lo contrario, puede hacer una attrib -h -s G:\Destination_Folderpara eliminar el sistema y el atributo oculto después de la copia.

JP Babiera
fuente
-1

Use la solución de M Aguilar si no le importa correr attribdespués. Otra solución sería crear el directorio de destino de antemano:

  1. mkdir I:\E
  2. robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA
jofafrazze
fuente
2
Esto no ayuda: E se establece en el sistema oculto después de la copia.
Flyto