이 입력이 있습니다.
sdkxyosl 1
safkls 2
asdf--asdfasxy_asd 5
dkd8k jasd 29
sdi44sw 43
asasd afsdfs 10
rklyasd 4
이 출력이 필요합니다.
sdi44sw 43
dkd8k jasd 29
asasd afsdfs 10
asdf--asdfasxy_asd 5
rklyasd 4
safkls 2
sdkxyosl 1
그래서 마지막 열을 기준으로 줄을 정렬해야합니다.
한 줄에 몇 개의 열이 있는지 모르겠습니다.
나는 그것을 알아낼 수 없다. 나는 “펄 파워”가 없다. 나는 단지 sed, awk, cut 등으로 ~ 평균 스크립팅 능력을 가지고 있습니다.
누군가 그것을하는 방법을 알고 있습니까?
답변
다음 명령 줄은 awk
file.txt의 각 줄의 마지막 필드를 앞에 붙이고 숫자를 반대로 정렬 한 다음 cut
추가 된 필드를 제거하는 데 사용 합니다.
awk '{print $NF,$0}' file.txt | sort -nr | cut -f2- -d' '