ls
플래그와 함께 사용할 때의 순서는 -U
C에서 dirent.h 라이브러리를 사용하고 파일 이름을 루프에 표시할 때 얻는 순서와 동일합니다. 구조 d_off
멤버를 표시하면 dirent
숫자가 오름차순으로 나타납니다.
d_off
파일주문 이유가 뭔가요? 그렇다면 정확히 무엇입니까? 파일 오프셋으로 설명되어 있지만 이것이 무엇을 의미하는지 잘 모르겠습니다.
미리 감사드립니다
답변1
에서 man 3 readdir
:
이륙하다
d_off에 반환된 값은 디렉터리 스트림의 현재 위치에서 Telldir(3)을 호출하여 반환된 값과 동일합니다. 유형과 이름에도 불구하고 d_off 필드는 최신 파일 시스템에서 어떤 종류의 디렉터리 오프셋도 거의 없습니다. 애플리케이션은 이 필드를 불투명한 값으로 처리해야 하며 해당 내용에 대해 어떤 가정도 하지 않아야 합니다. Telldir(3)도 참조하세요.
즉, d_off
순서는그건 같은거야;이 디렉토리에 대해 파일 시스템이 반환한 디렉토리 항목의 번호입니다.
따라서 순서는 파일 시스템 자체에 의해 정의됩니다. 이는 단순할 수도 있고(예: FAT12 디렉터리에서) 매우 복잡할 수도 있습니다(예: 일부 복잡한 파일 시스템의 OverlayFS).