Por que o RoboCopy cria uma pasta oculta do sistema?


10

Eu pensei em experimentar 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, 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 abro as propriedades dessa pasta de destino, o atributo Oculto fica desativado. O que está acontecendo aqui?

É porque eu o executei em um prompt de comando do administrador? Ou é um problema com minha escolha de modificadores? Ou a robocópia 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 o mesmo aconteceu lá. Mas quando tento copiar uma pasta para uma pasta diferente, a pasta de destino permanece normal. Poderia ser porque eu copio uma unidade? Se sim, como posso impedir que isso aconteça? Porque eu realmente quero copiar toda a unidade ...


Criar o diretório antecipadamente não funciona. Assim que você executar a cópia robo novamente, os atributos novamente a ocultarão. O comando attribute funciona.

Respostas:


9

No meu sistema (Vista), o powershell mostra a unidade c: \ como tendo os atributos oculto e do 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:\

Após copiar os arquivos, você pode usar o attrib para corrigi-los. Confira attrib /? para detalhes.


Hum, sim, todos os meus três discos rígidos também têm esses atributos ... O estranho é que meus discos D e E têm uma pasta oculta do sistema quando eu os copiei para pastas em uma unidade externa, enquanto a unidade C não Oo Eu não entendo isso ...
Svish

Estou tendo o mesmo problema com um compartilhamento de rede oculto ( $). Eu corri Get-Itemnessa parte e também diz, d--hsentão acho que essa é a razão! Obrigado!
21712 Chris

Isso também pode ser verdade nos compartilhamentos de rede em geral, como na caixa Synology NAS, que marca \\ nas \ sharename como uma pasta oculta. Quando você copia essa pasta com robocopy com o / copyall ou / COPY: xAxxxx que inclui os atributos (A), a pasta de destino é criada com os mesmos atributos que a origem.
BeowulfNode42

9

Tem a ver com copiar as informações de volume do sistema ocultas / do sistema a partir da raiz de um disco - se elas forem copiadas, o diretório de destino obterá os mesmos atributos system / hidden.

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

Adicione a /A-:SHopção para ignorar arquivos do sistema.

Mais informações nesta discussão do Microsoft Technet .


6

Eu também encontrei esse problema. Parece que essa pasta oculta aparece quando o diretório de origem é a raiz da unidade, por exemplo. D:\ou F:\. Essas pastas conterão o sistema e atributos ocultos e, sendo uma pasta raiz de origem, não podem ser removidas pelo attrib -s -hcomando.

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

Você pode ver os atributos no PowerShell. Você verá o modo d--hspara diretório, oculto e sistema. Experimente o get-itemcomandoC:\> Get-Item F:\

O robocopy supostamente não o criará como uma pasta oculta se a pasta existir. Eu li em algumas postagens que usar a /CREATEfará 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_Folderpara remover o sistema e o atributo oculto após a cópia.


-1

Use a solução de M Aguilar se você não se importa de correr attribdepois. Outra solução seria apenas criar o diretório de destino com antecedência:

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

2
Isso não ajuda - E é definido como sistema oculto após a cópia.
Flyto
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.