Por que as regras de ordenação de nomes de arquivo são diferentes em programas linux gráficos / não-gráficos?

0

Aqui está a saída de um ls :

x-15.txt
x-1617.txt
x-2411.txt
x-24.txt
x-ae.txt
x-afag.txt
x-bdaa.txt
x-bd.txt

Observe que x-1617 vem antes de x-24 e a mesma regra de ordenação parece se aplicar aos nomes de arquivos alfabéticos correspondentes.

Tudo bem. Isso é o que eu tenho esperado.

Em vários programas gráficos (por exemplo, Dolphin, Gwenview), os nomes numéricos são ordenados de forma diferente - x-24 viria antes de 'x-1617' '- presumivelmente porque alguém decidiu que o valor numérico interpretado da seqüência de dígitos era mais útil.

Isso está causando problemas em que a ordem de apresentação é importante. Eu não acho que as coisas sempre foram assim.

Existe uma opção de política para todo o sistema que mudará isso para todos os programas no Ubuntu / KDE? Eu quero que todos os programas usem a ordenação ASCII em estilo ls .

    
por spraff 13.02.2015 / 23:35

2 respostas

0

ls por padrão usa 'classificação alfabética', que significa 15 < 2. Parece que os outros aplicativos que você está usando usam 'version sort', significando 2 < 15. Você pode escolher a ordem de versão de ls até ls -v .

Eu não conheço uma política para todo o sistema que organize os critérios de classificação de arquivos, no entanto, pensei em fornecer os termos adequados de alfabético versus a classificação da versão pode ajudá-lo a encontrar o que você está procurando!

    
por 14.02.2015 / 00:40
0

verifique o valor da variável de ambiente LC_COLLATE. Se definido como "POSIX", deve fazer o "tipo alfabético" em todos os casos.

    
por 16.06.2016 / 02:19