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 / 1436597
Accepted
NinjaDuckie
NinjaDuckie
Asked: 2019-05-15 02:12:01 +0800 CST2019-05-15 02:12:01 +0800 CST 2019-05-15 02:12:01 +0800 CST

Por que um utilitário projetado para gerenciamento de arquivos funcionaria fora da ordem alfabética?

  • 772

Em um ambiente isolado, estou usando um conversor de arquivo .EML para .MSG, ReliefJet Essentials , para converter um grande repositório de arquivos (na casa das centenas de milhares), mantendo intacta a estrutura de diretório - que começa com pastas para cada letra e vai mais profundo a partir daí.

O software de conversão não fornece um registro de cada arquivo concluído (felizmente), mas mantém um registro de erro de tudo o que falha, o que me dá alguma indicação do caminho que ele segue.

O que me confunde é não colocar as pastas em ordem alfabética. O log de erros relata que as pastas foram convertidas na ordem:

D, N, P, C, I, S, M, G, T, V, B, O, E, Q, A, U, R, F, L

Mesmo as subpastas quando aparecem nesta lista foram atendidas fora de ordem. Por exemplo, em B, as pastas foram atendidas (truncadas para privacidade):

BLA, BD, BRE, BAL, BRA, BEL, BLU

Corrigi alguns arquivos problemáticos e executei a solicitação de conversão novamente, ignorando os arquivos existentes. O log retornou todos os erros exatamente na mesma ordem, o que me faz pensar que não é uma 'escolha aleatória', mas uma ordem definida.

O que eu estou querendo saber é como esse pedido é alcançado. Não parece ser baseado no tamanho da pasta ou no número de arquivos, como acontece com os dois valores:

  • NÉ menor queD
  • Ltem quase o mesmo tamanho queD
  • Pé maior que Ne DcombinadoL

Existe algum método de classificação que explique por que o utilitário seleciona pastas nessa ordem não alfabética, que parece aleatória, mas é repetível e reproduzível?

conversion sorting
  • 1 1 respostas
  • 31 Views

1 respostas

  • Voted
  1. Best Answer
    Mokubai
    2019-05-15T02:37:12+08:002019-05-15T02:37:12+08:00

    Provavelmente é a ordem em que os arquivos e pastas foram encontrados no disco.

    Digamos que você crie uma pasta no disco

    • Pasta J

    Então, algum tempo depois, você cria outra pasta

    • Pasta J
    • Pasta B

    Yes Folder Bestá alfabeticamente antes de J, mas foi criado depois.

    Uma lista de diretórios é apenas isso, uma lista das coisas no diretório, e é muito mais simples anexar itens a essa lista do que ler a lista inteira, classificá-la por algum algoritmo arbitrário e depois gravar a lista de volta no disco .

    Em termos de adicionar itens a esse diretório, seria muito lento adicionar itens a esse diretório se você o classificasse todas as vezes; na verdade, você poderia prejudicar uma máquina fazendo o simples ato de adicionar uma tonelada de arquivos de zero byte a um diretório, mesmo que o nome do arquivo fosse sequencial, ele teria que verificar classificando-os a cada vez.

    Até mesmo renomear um arquivo em um diretório grande pode ser dolorosamente lento, pois acionaria uma operação de classificação na pasta.

    Então, em vez disso, um item é simplesmente anexado à lista a cada vez. Sem classificação, sem nada. Basta anexar e fechar.

    Se você deseja uma lista classificada, pode digitalizar o diretório e classificar sua própria lista. Durante a vida útil desse diretório, pode ter sido mais rápido para os programas já estarem classificados, mas esse problema é menor em comparação com o impacto no desempenho obtido ao fazê-lo toda vez que um arquivo é gravado ou renomeado.

    Portanto, o que você provavelmente está vendo é a ordem em que os diretórios ou arquivos foram adicionados ao seu diretório, em vez de uma lista classificada.

    Seu programa não se preocupa com "gerenciamento de arquivos". Tudo o que importa é o conteúdo desses arquivos e garantir que ele seja executado na lista.

    É aleatório, mas ao mesmo tempo é repetível porque essa é a ordem em que os nomes são gravados na lista de pastas.

    Parece aleatório, mas realmente não é .

    • 2

relate perguntas

  • Como processar imagens em lote para dividi-las e remontá-las verticalmente?

  • Não é possível conectar um conversor TTL para USB a um telefone

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