AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1491937
Accepted
Doflaminhgo
Doflaminhgo
Asked: 2019-10-14 13:37:34 +0800 CST2019-10-14 13:37:34 +0800 CST 2019-10-14 13:37:34 +0800 CST

Copiando arquivos: o Windows grava no disco se os arquivos forem idênticos?

  • 772

Eu tenho um diretório com muitos livros em formato PDF (cerca de 2 GB de tamanho).

Durante a leitura, muitas vezes deixo notas e anotações nos arquivos. Ocasionalmente, faço um backup em um disco rígido externo. Como não me lembro quais arquivos foram modificados desde o último backup, apenas copio e sobrescrevo tudo.

O Windows verifica se os arquivos com o mesmo nome são idênticos (por conteúdo) antes de substituí-los? Se não, como eu faria exatamente isso?

windows hard-drive
  • 6 6 respostas
  • 9210 Views

6 respostas

  • Voted
  1. Best Answer
    Mr Ethernet
    2019-10-15T00:55:37+08:002019-10-15T00:55:37+08:00

    Robocópia.

    O Windows não pode diferenciar entre arquivos idênticos e modificados se você copiar usando o Windows Explorer.

    O Windows pode diferenciar entre arquivos idênticos e modificados se você copiar usando Robocopy , que é um utilitário de cópia de arquivo incluído no Windows (Vista, 7, 8.1 e 10).

    Não há necessidade de usar ferramentas de terceiros.

    Você pode salvar este script como um arquivo em lote e executá-lo novamente sempre que quiser fazer um backup:

    robocopy /e c:\PDFs p:\PDFs

    • Sempre que um arquivo PDF é anotado e as alterações são salvas, os atributos Last Modified e Size serão alterados na pasta de origem, acionando uma substituição do arquivo correspondente na pasta de destino na próxima vez que o Robocopy for invocado.
    • O Robocopy compara os atributos Tamanho e Última modificação de todos os arquivos existentes na origem e no destino. Se um dos atributos for diferente, o arquivo de destino será substituído. Observação: esses valores precisam apenas ser diferentes , não necessariamente mais novos ou maiores; mesmo que um arquivo de origem tenha um atributo Last Modified mais antigo ou tamanho menor , a origem ainda substituirá o destino.
    • a opção /e(ou /s) não é necessária se todos os seus PDFs estiverem na raiz da pasta referenciada no script, mas se você quiser incluir subpastas , use /s. Se você deseja incluir subpastas e subpastas vazias , use /e.
    • Eu atribuiria à unidade de backup uma letra mais adiante no alfabeto, para que não haja risco de outra unidade receber inadvertidamente a letra da unidade usada no script, fazendo com que o backup falhe em algum momento no futuro. Eu usei P aqui para PDF.

    Esse script simples é tudo que você precisa.

    • 63
  2. xypha
    2019-10-14T19:35:18+08:002019-10-14T19:35:18+08:00

    O Windows não faz isso. No entanto, ele solicitará que você substitua os arquivos com o mesmo nome e você poderá selecionar manualmente se desejar.

    Para uma solução mais fácil, use o FreeFilesSync para comparar as pastas e sobrescrever apenas os arquivos alterados/atualizados (opção Espelho e selecione File time and sizeem Configurações de comparação ).

    • 6
  3. Albin
    2019-10-14T13:47:41+08:002019-10-14T13:47:41+08:00

    Sim e não! O Windows Explorer verifica apenas os metadados (tamanho do arquivo, datas, etc.).

    Mas você pode usar um script, por exemplo , powershell ( veja aqui ), que vem com (a maioria) ferramentas do Windows ou de terceiros que permitem comparar/copiar arquivos usando somas de verificação de arquivo, por exemplo, MD5 ou SH1 hashing ( veja aqui e/ou use um mecanismo de pesquisa ).

    Eu mesmo gosto de usar o software checksum compare ( veja aqui ), ele permite comparar arquivos e diretórios, incluindo checksums de arquivos, e funciona a partir de um pen drive USB.

    Se você não precisa comparar o conteúdo do arquivo e deseja apenas copiar arquivos "mais recentes", pode usar qualquer método de cópia avançado, como xcopy, robocopy, etc.

    Nota: os diferentes métodos de hash têm vantagens e desvantagens (principalmente confiabilidade versus velocidade). Para mim, o MD5 é mais do que suficiente para esse tipo de comparação de arquivos, mas isso é uma preferência pessoal. Veja aqui mais informações sobre esse tópico.

    • 4
  4. Damon
    2019-10-15T01:22:10+08:002019-10-15T01:22:10+08:00

    Resumindo: Não

    O Windows não aponta isso de maneira direta.

    Bem, ele faz , mas como tudo no Windows é ambíguo na melhor das hipóteses. Você será solicitado a informar conflitos de nome e, dependendo da versão do Windows, obterá uma caixa de diálogo mais ou menos compreensível com várias opções para escolher, com uma nota adicional ("Blah blah, tamanho diferente, mais recente"). Você pode então, um por um, escolher se deseja ou não manter o arquivo modificado, e você tem a opção de aplicar isso a todas as correspondências "idênticas".
    Agora é claro que é Windows, então você não tem garantia de que "mais novo" realmente significa mais novo e não sabe o que é "idêntico" (é apenas a colisão de nomes, é a mudança de tamanho, é a data de modificação ou é tudo?).

    Alternativas

    Existe uma grande variedade de programas de sincronização de arquivos, gratuitos e comerciais, que são um pouco melhores na medida em que verificam se um arquivo foi modificado antes de sobrescrevê-lo, rsyncsendo a tradicional ferramenta mãe de todas, mas também sendo um usuário menos exigente -amigável do que algumas pessoas podem desejar.
    No entanto, eu não recomendo nenhum deles porque eles não estão fundamentalmente melhorando as coisas.

    Pessoalmente, se você não tem medo de um pouco de linha de comando (sempre poderia criar um arquivo em lotes!) Eu recomendaria o excelente zpaq de Matt Mahoney . Isso é basicamente ZIP, exceto que comprime muito melhor e desduplica em tempo real.

    Como isso é melhor ?

    Bem, as ferramentas de comparação de soma de verificação são ótimas e tal. Especialmente quando você passa pela rede, nada supera a rsyncexecução em ambas as extremidades, é simplesmente incrível. Mas, embora uma ferramenta de sincronização típica faça o trabalho muito bem (e melhor que o Explorer), não é nisso que ela é melhor.

    Escrever em uma unidade externa, comparando ou não as somas de verificação, tem algumas coisas com as quais você precisa lidar:

    • Tempo de acesso no drive (péssimo)
    • Latência sobre USB ou o que você usa (melhorando, mas ainda meio abismal)
    • Largura de banda (na verdade, muito boa hoje em dia )
    • Gravações de unidade (e amplificações)
    • Leituras do Drive

    Para comparar as somas de verificação, primeiro você precisa ler os arquivos. Ponto final. O que significa que, para alguns milhares de arquivos, você paga pela latência de atravessar a estrutura de diretórios, abrir arquivos em um link de alta latência e ler os arquivos milhares de vezes. Além disso, transferindo-os em pequenas unidades por meio de um fio de alta latência. Bem, isso é péssimo, é um processo muito caro.

    Em seguida, você deve gravar os arquivos que foram alterados, novamente com várias operações de alta latência, como abrir arquivos e sobrescrever dados, e novamente um por um . Isso é uma droga duas vezes porque não é apenas inerentemente inseguro (você perde o arquivo que está sendo substituído se o seu gato tropeçar no cabo USB), mas também com discos rígidos modernos ( como muitas unidades externas), pode ser terrivelmente lento, até um único megabyte por segundo se você não tiver sorte. Isso e a latência de milhares de pequenas transferências se acumulando.
    Uma ferramenta de cópia de arquivo bem escrita pode ser capaz de lidar com o problema de segurança copiando um arquivo temporário e renomeando-o atomicamente depois (mas isso adiciona ainda mais sobrecarga!).

    Agora, um formato de arquivo como o zpaq criará um arquivo que já contém as somas de verificação dos arquivos, eles podem ser lidos de forma rápida e sequencial a partir de um local. Em seguida, localmente (localmente significa "do seu lado do cabo", onde você presumivelmente tem um disco razoavelmente rápido conectado via SATA ou M.2 ou algo assim) compara somas de verificação, comprime diferenças e apenas anexa grava os dados compactados sequencialmente no arquivo existente arquivo. Sim, isso significa que o arquivo vai crescer um pouco com o tempo porque você carrega toda uma história. Infelizmente, supere isso, o custo é muito moderado graças ao diferencial e à compressão.

    Este método é mais rápido e mais seguro ao mesmo tempo. Se você puxar o cabo no meio da operação, seu backup atual será interrompido (obviamente!). Mas você não perde seus dados anteriores. Todas as transações que passam por links "lentos" são estritamente sequenciais, grandes transferências, o que maximiza o rendimento.

    • 3
  5. Daniel Klugh
    2019-10-15T20:19:21+08:002019-10-15T20:19:21+08:00

    XCOPY/D só copiará arquivos se a origem for mais recente que o destino. (XCOPY/S/D para uma cópia recursiva)

    • 1
  6. StalePhish
    2019-10-17T05:23:52+08:002019-10-17T05:23:52+08:00

    Microsoft SyncToy

    A Microsoft cria um ótimo aplicativo para PC com Windows chamado SyncToy, onde você especifica pares de "pasta esquerda e pasta direita" e escolhe ecoar alterações da esquerda para a direita, contribuir com alterações da esquerda para a direita sem excluir a direita ou sincronizar entre a esquerda e a direita. Há uma interface de usuário para visualizar as alterações antes de confirmar.

    Se um arquivo for detectado como idêntico, ele será ignorado, que é a funcionalidade que você está procurando.

    Uso o modo Echo há cerca de 10 anos para espelhar gradualmente as alterações do meu PC de mesa para uma unidade externa.

    https://www.microsoft.com/en-us/download/details.aspx?id=15155

    • 0

relate perguntas

  • renomear em massa conjuntos de arquivos de imagem

  • Qual seria o equivalente em lote do argumento "pass" do Python?

  • Comunique-se com o daemon do Docker no Windows

  • O fenômeno 'Write cliff' só acontece com discos SSD?

  • atalho do shell da área de trabalho no painel lateral do explorer

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    Serviço do Windows 10 chamado AarSvc_70f961. O que é e como posso desativá-lo?

    • 2 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Marko Smith

    ssl.SSLCertVerificationError: falha na verificação do certificado [SSL: CERTIFICATE_VERIFY_FAILED]: não foi possível obter o certificado do emissor local (_ssl.c:1056)

    • 4 respostas
  • Marko Smith

    Como posso saber em qual unidade o Windows está instalado?

    • 6 respostas
  • Martin Hope
    Albin Como faço para ativar o WindowsXP agora que o suporte acabou? 2019-11-18 03:50:17 +0800 CST
  • Martin Hope
    fixer1234 O "HTTPS Everywhere" ainda é relevante? 2019-10-27 18:06:25 +0800 CST
  • Martin Hope
    Kagaratsch O Windows 10 exclui muitos arquivos minúsculos muito lentamente. Algo pode ser feito para agilizar? 2019-09-23 06:05:43 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    Inter Sys Como Ctrl+C e Ctrl+V funcionam? 2019-05-15 02:51:21 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve