
내부에 "1", "2",...,"9", "10", "11", ..., "20", "21", ...이라는 파일이 있는 디렉토리가 있습니다.
"1", "2",...,"9", "10", "11", ..., "20", "21", ...의 순서로 나열할 수 있습니까?
나는 시도했다 ls -ls
. 그런 식으로 파일을 나열하지 않고 대신 "1", "10", "11", ..., "19", "2", "20", "21", .... 내 생각에는 그런 기능은 가끔 도움이 될 것입니다.
답변1
GNU(대부분의 Linux 배포판에서 볼 수 있음)를 사용하면 페이지 에서 , where 를 ls
사용할 수 있습니다.ls -v
-v
man
-v natural sort of (version) numbers within text
답변2
GNU는 ls -v
이미 언급되었지만 다른 명령의 경우 쉘이 zsh
globbing 한정자를 사용하여 와일드카드가 확장되는 순서에 영향을 줄 수 있습니다.
예를 들어:
printf '%s\n' *(om)
m정렬 순서 (가장 오래된 것부터 최신 것까지)를 *(Om)
반대로 하기 위해 수정 시간(최신 것부터 가장 오래된 것 순) 으로 정렬된 파일을 나열합니다 .
*(n)
파일을 숫자순으로 정렬합니다. 따라서 ls
GNU가 아닌 경우 ls
에도 다음을 수행할 수 있습니다.
ls -fdl -- *(n)
목록을 숫자로 정렬하려면