grep 검색 순서?

grep 검색 순서?

파일이 포함된 두 개의 동일한 폴더가 있습니다. 하나는 외부 exfat 드라이브에 있고 다른 하나는 로컬 드라이브에 있습니다. 외장 드라이브에 폴더를 만들면 grep -r알파벳 순으로 파일을 검색하는데, 로컬 폴더에 똑같이 하면 검색 순서가 무작위로 나오는 것 같아요. 왜 이런 일이 발생하며 로컬 드라이브에서 알파벳 순서를 사용하는 방법은 무엇입니까?

답변1

파일 시스템에 따라 다릅니다. 일부 파일 시스템에는 "자연스럽게" 정렬된 파일이 있을 수 있지만 일부는 그렇지 않습니다. 어떤 경우에는 순서가 우연일 수도 있습니다. 3개의 서로 다른 파일 시스템(ext4, tmpfs 및 vfat)을 사용하고 새 디렉터리에 순서대로 3이름이 지정된 파일을 생성해 보았 1더니 3개의 서로 다른 순서가 생성되었지만 그 중 어느 것도 "자연스러운" 것이 아닙니다.2grep -r .

grep -r출력의 일부인 경우 파일 이름을 사용하면 언제든지 출력을 정렬할 수 있습니다(나중에 파이프라인 작업에서 파일 이름 부분을 잘라낼 수도 있음).

그렇지 않으면 내가 아는 한 lsbash 와일드카드는 항상 로케일에 따라 정렬된 파일을 생성하므로 .grep -rgrep */*

관련 정보