Por que o RoboCopy cria uma pasta oculta do sistema?

10

Eu pensei em testar o RoboCopy para espelhar o conteúdo de uma pasta em outro disco rígido. E parece que funcionou. Mas, por algum motivo, para ver a pasta de destino, eu tenho que ativar Mostrar arquivos, pastas e unidades ocultas e desativar Ocultar arquivos protegidos do sistema operacional . Por que é isso? Tanto a pasta de origem quanto a de destino eram inicialmente diretórios visíveis e normais. Quando eu abro as propriedades para essa pasta de destino, o atributo Oculto é desativado. O que está acontecendo aqui?

É porque eu corri em um prompt de comando do administrador? Ou é um problema com a minha escolha de modificadores? Ou o robocopy realmente funciona dessa maneira?

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

Atualização: Tentei copiar outra unidade para outra pasta e tive a mesma coisa acontecendo lá. Mas quando tento apenas copiar uma pasta para uma pasta diferente, a pasta de destino permanece normal. Poderia ser porque copio uma unidade? Se sim, como posso evitar que isso aconteça? Porque eu realmente quero copiar a unidade inteira ...

    
por Svish 18.08.2009 / 18:44

4 respostas

9

No meu sistema (Vista), o powershell mostra a unidade c: \ como tendo os atributos ocultos e de sistema definidos.

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


    Directory:


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

Depois de copiar os arquivos, você pode usar attrib para corrigi-los. Confira o atributo /? para detalhes.

    
por 18.08.2009 / 19:46
9

Tem a ver com a cópia oculta / do sistema System Volume Information da raiz de um disco - se for copiado, o diretório de destino recebe os mesmos atributos system / hidden.

Criar o diretório antes de copiar não ajuda, pois o robocopy também o ocultará.

Adicione a chave /A-:SH para ignorar os arquivos do sistema.

Mais informações neste Discussão sobre o Microsoft Technet .

    
por 08.01.2014 / 10:20
6

Eu também corri para esse problema. Parece que esta pasta oculta aparece quando o diretório de origem é uma raiz da unidade, por exemplo. D:\ ou F:\ . Essas pastas conterão o sistema e os atributos ocultos e, por ser uma pasta raiz de origem, não poderão ser removidas pelo comando attrib -s -h .

Neste exemplo, F:\ é a origem G:\ é o destino.

Você pode ver os atributos no PowerShell. Você verá o modo d--hs para o diretório oculto & sistema. Experimente o comando get-item C:\> Get-Item F:\

Robocopy supostamente não irá criá-lo como uma pasta oculta se a pasta existir. Eu li em alguns posts que usando um /CREATE vai fazer o truque, ou você pode criar as pastas manualmente antes do tempo. Eu tenho que fazer mais testes, bem como outras combinações para verificar isso completamente.

Caso contrário, você pode fazer um attrib -h -s G:\Destination_Folder para remover o sistema e o atributo oculto após a cópia.

    
por 04.12.2012 / 20:03
-1

Use a solução de M Aguilar se você não se importar em executar attrib depois. Outra solução seria apenas criar o diretório de destino de antemão:

  1. mkdir I:\E
  2. robocopy E: I:\E /COPYALL /E /R:0 /MIR /B /ETA
por 12.06.2011 / 23:50