Estou tentando escrever um script simples para fazer backup de arquivos e diretórios específicos, mas parece que falha ao copiar para a unidade de rede. Eu já vi outros problemas semelhantes aconselhando o mapeamento da unidade usando o net use, mas nesses sistemas H:
sempre já será montado (fico feliz por o script falhar nos casos em que a unidade não foi montada). Eu o isolei da seguinte linha, que também falha ao colar diretamente no CMD.
H:\>xcopy "C:\Users\<user>\My Documents" "H:\<user>-backup-26022015\My Documents" /s /c /d /e /h /i /r /y
Access denied
Unable to create directory - H:\<user>-backup-26022015\My Documents
File not found - *.*
0 File(s) copied
Alguma idéia do que estou fazendo de errado?
Respostas:
Suponho que você tenha deixado seu diretório inicial fora do caminho de propósito, portanto, verifique se ele está lá.
Tente o seguinte:
Com o win7 e posterior, o diretório MyDocs não é mais chamado de "Meus Documentos", embora o explorer às vezes o exiba dessa maneira, mas esse nome não seja realmente válido, portanto a linha de comando requer o caminho como C: \ Users \% USERNAME% \ Documents. Embora a mensagem de erro se queixe de criar o caminho de destino, seu verdadeiro problema é o caminho de origem (confirmei isso com o teste).
Observe também que você está aninhando um diretório do My Docs dentro de outro, deixando uma barra à direita do parâmetro de origem e especificando o nome da pasta no destino, para que seus arquivos terminem em h: -backup-260215 \ Meus Documentos \ Meu Documentos. se você quiser consertar isso, adicione um '\ *' à direita no caminho de origem.
fonte
Como Frank disse, o erro ocorre porque "Meus documentos" é um link (ou pelo menos a implementação quebrada da Microsoft) não um diretório (como visto em
dir /a
). Verifique tambémicacls H:\
se você possui direitos, também pode usar datas ISO (25-02-2015) para poder classificar corretamente ou, para backups, use ferramentas mais avançadas que o xcopy. consulte wikipedia.org/wiki/NTFS_symbolic_linkfonte