ll 출력을 정렬하는 방법

ll 출력을 정렬하는 방법

ll다음 결과를 반환합니다.

51380224 Aug  3 08:23 tig_10.d1
51380224 Aug  3 08:18 tig_10.d10
51380224 Aug  3 08:20 tig_10.d11
51380224 Aug  3 08:23 tig_10.d12
51380224 Aug  3 08:21 tig_10.d13
51380224 Jul 31 12:06 tig_10.d14
131072 Jul 31 12:06 tig_10.d15
51380224 Aug  3 08:15 tig_10.d2
51380224 Aug  2 23:08 tig_10.d3
51380224 Aug  2 14:24 tig_10.d4
51380224 Aug  2 14:24 tig_10.d5
51380224 Aug  3 08:21 tig_10.d6
51380224 Aug  3 08:22 tig_10.d7
51380224 Aug  3 08:13 tig_10.d8
51380224 Aug  3 08:20 tig_10.d9

이와 같은 파일을 나열하는 데 실패합니다.

51380224 Aug  3 08:23 tig_10.d1
51380224 Aug  3 08:15 tig_10.d2
51380224 Aug  2 23:08 tig_10.d3
51380224 Aug  2 14:24 tig_10.d4
51380224 Aug  2 14:24 tig_10.d5
51380224 Aug  3 08:21 tig_10.d6
51380224 Aug  3 08:22 tig_10.d7
51380224 Aug  3 08:13 tig_10.d8
51380224 Aug  3 08:20 tig_10.d9
51380224 Aug  3 08:18 tig_10.d10
51380224 Aug  3 08:20 tig_10.d11
51380224 Aug  3 08:23 tig_10.d12
51380224 Aug  3 08:21 tig_10.d13
51380224 Jul 31 12:06 tig_10.d14
131072 Jul 31 12:06 tig_10.d15

어떤 아이디어가 있나요?

답변1

ls지정한 파일 이름(또는 그렇지 않은 경우 현재 디렉토리)을 재정렬합니다. 이 문제를 해결하는 한 가지 방법은 파일 이름만 제공하는 것입니다.

ls -l *.d? ; ls -l *.d??

또는 긴 목록을 수행하는 별칭/함수가 있는 것 같습니다.

ll *.d?; ll *.d??

답변2

나는 당신의 것이 무엇인지 모릅니다 ll. ll예, 일반적인 별칭 ls -l이지만 그렇게 보이지는 않습니다.

sort어떤 경우든 특정 출력은 GNU 및 해당 출력을 원하는 대로 사용자 정의할 수 있습니다.버전정렬은 열 5 이상에 적용됩니다.

ll | sort -bVk5

ll그것이 일종의 별칭 이고 ls당신 ls이 GNU라면 ls, 그것은 ls또한버전정렬을 활성화합니다 -v.

셸을 사용하면 옵션이나 glob 한정자를 사용하여 zsh비슷한 방식으로 glob을 정렬 할 수 있습니다. 따라서 명령이 파일 이름 목록을 인수로 사용할 수 있고 추가 정렬 자체를 수행하지 않는 경우 다음을 수행할 수 있습니다(in에서만).numericglobsort(n)llzshzsh

ll *(n)

답변3

사용 sort:

$ ls -lghFG | sort -n -td -k2
total 0
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d1
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d2
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d3
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d4
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d5
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d6
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d7
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d8
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d9
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d10
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d11
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d12
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d13
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d14
-rw-r--r-- 1 0 Aug  3 09:43 tig_10.d15

그러면 해당 문자를 구분 기호로 사용 d하고 필드 2에서 숫자에 따라 출력을 정렬하므로 파일 이름에 해당 문자가 포함되어 있으면 문제가 발생할 수 있습니다 d.

ll별칭인 사용 요구 사항을 충족하려면 다음을 수행할 수 있습니다(권장되지 않음).

alias ll='ls -lghFG | sort -n -td -k2'

답변4

에서 man,

ll -v

  • -v 텍스트에서 (버전) 번호의 자연스러운 순서

관련 정보