Ordem de busca Grep?

1

Eu tenho duas pastas idênticas com arquivos, uma na unidade exfat externa e outra na unidade local. Quando eu grep -r pasta na unidade externa procura arquivos em ordem alfabética, no entanto, se eu fizer o mesmo para a pasta local, a ordem de pesquisa parece aleatória. Por que isso está acontecendo e como usar a ordem alfabética na unidade local também?

    
por tyrande 03.01.2018 / 13:22

1 resposta

3

Depende de sistemas de arquivos. Alguns sistemas de arquivos podem ter arquivos "naturalmente" solicitados e outros não (e, em alguns casos, o pedido pode ser apenas uma coincidência). Tentei com três sistemas de arquivos diferentes (ext4, tmpfs e vfat), e criar arquivos chamados 3 , 1 , 2 nessa ordem em um novo diretório resultou em 3 ordens diferentes de grep -r . , nenhuma sendo a " natural "um.

Quando você usa grep -r o nome do arquivo se parte da saída assim mesmo assim você pode sempre classificar a saída (e talvez cortar a parte do nome do arquivo em uma operação de pipe posterior).

Caso contrário, os curingas AFAIK, ls e bash sempre produzem arquivos classificados de acordo com a localidade, portanto, em vez de grep -r , tente algo como grep */* .

    
por 03.01.2018 / 14:07

Tags