저는 Ubuntu 터미널에서 파이핑이 어떻게 작동하는지 배우려는 Linux 초보자입니다. 파일 크기별로 정렬을 시도했습니다.
ls -al | sort -k5
파일은 다음 순서로 나열되었습니다.
drwx------ 19 min10 domain users 0 2010-10-07 12:38 .
drwx------ 29 min10 domain users 0 2010-02-16 22:30 MSI
drwx------ 2 min10 domain users 0 2009-11-25 19:53 www
drwx------ 2 min10 domain users 0 2010-02-05 09:14 .cache
drwx------ 2 min10 domain users 0 2010-03-02 08:11 My Pictures
drwx------ 2 min10 domain users 0 2010-03-02 10:41 regu
drwx------ 2 min10 domain users 0 2010-03-31 13:08 elec
drwx------ 2 min10 domain users 0 2010-04-10 21:43 temp
drwx------ 2 min10 domain users 0 2010-10-06 09:13 bubbla
drwx------ 3 min10 domain users 0 2010-01-26 08:26 cfg
drwx------ 3 min10 domain users 0 2010-03-30 15:34 data
drwx------ 3 min10 domain users 0 2010-03-30 16:03 idv
drwx------ 3 min10 domain users 0 2010-04-01 09:10 arduino-0018
drwx------ 3 min10 domain users 0 2010-04-14 15:10 processing-1.1
drwx------ 3 min10 domain users 0 2010-07-06 16:20 eclipse
drwx------ 4 min10 domain users 0 2010-04-15 09:34 pryl
drwx------ 4 min10 domain users 0 2010-07-06 16:30 dv2
-rwx------ 1 min10 domain users 123 2010-10-07 12:38 starwars.txt
-rwx------ 1 min10 domain users 16109 2010-10-06 07:01 .bash_history
-rwx------ 1 min10 domain users 454656 2010-03-30 15:29 putty.exe
-rwx------ 1 min10 domain users 504 2010-04-10 21:16 little.gif
-rwx------ 1 min10 domain users 56682 2010-04-10 21:12 awesome.jpg
-rwx------ 1 min10 domain users 7 2010-04-10 21:32 blah.txt
이는 파일 크기별로 정렬하는 측면에서 분명히 실패입니다. 나는 외에도 여러 다른 열을 사용해 보았지만 -k5
반복적으로 혼란스럽고 순서가 잘못된 결과를 얻었습니다. 나도 시도했지만 -nk5
여전히 가지 않았습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
답변1
표시되는 출력은 숫자가 아닌 알파벳순으로 정렬됩니다. 다음을 추가해 보세요.
-n
,--numeric-sort
문자열 숫자 값에 따라 비교
편집하다:방금 귀하의 출력에서 파일 크기 열이 6번째 열인 것으로 나타났습니다! 시도해 보셨나요 -nk6
?
내 Hardy Heron에서 테스트한 결과는 다음과 같습니다.
ls -al | sort -nk5
ls -al | sort -k5n
ls -al | sort -k5 -n
ls -al | sort -k5 --numeric-sort
sort --version
수확량: 6.10
답변2
크기별로 정렬하려면 'ls -S' 또는 'ls -rS'를 사용해 보세요.