앞에 0이 없는 경우 목록 정렬

앞에 0이 없는 경우 목록 정렬

숫자순으로 정렬하고 첫 번째 문자의 명령키를 기준으로 정렬하고 싶습니다.

CPL_V11.01.00_1
CPL_V11.01.00_10
CPL_V11.01.00_2
CPL_V11.01.00_3
CPL_V11.01.00_35
CPL_V11.01.00_36
CPL_V11.01.00_37
CPL_V11.01.00_38
CPL_V11.01.00_39
CPL_V11.01.00_4
CPL_V11.01.00_40
CPL_V11.01.00_41
CPL_V11.01.00_42
CPL_V11.01.00_43
CPL_V11.01.00_44
CPL_V11.01.00_45
CPL_V11.01.00_46
CPL_V11.01.00_47

여기서 무엇을 해야 합니까?

답변1

sort -V input

에서 man sort:

   -V, --version-sort
       natural sort of (version) numbers within text

그러면 다음이 가능해집니다:

CPL_V11.01.00_1
CPL_V11.01.00_2
CPL_V11.01.00_3
CPL_V11.01.00_4
CPL_V11.01.00_10
CPL_V11.01.00_35
CPL_V11.01.00_36
CPL_V11.01.00_37
CPL_V11.01.00_38
CPL_V11.01.00_39
CPL_V11.01.00_40
CPL_V11.01.00_41
CPL_V11.01.00_42
CPL_V11.01.00_43
CPL_V11.01.00_44
CPL_V11.01.00_45
CPL_V11.01.00_46

다음을 사용할 수도 있습니다.

sort -t _ -k 3 -n input

( _숫자로 정렬된 세 번째 필드를 분할하여 사용)

관련 정보