作者:zhanhailiang 日期:2012-12-15
bill@net:~/code$ cat grade.sort.awk function sort(array, elements, temp, i, j) { for(i = 2; i <= elements; i++) { for(j = i; array[j-1] > array[j]; j--) { temp = array[j]; array[j] = array[j-1]; array[j-1] = temp; } } return; } { for(i = 2; i <= NF; i++) { grades[i - 1] = $i; } sort(grades, NF -1); printf("%s: ", $1); for(j = 1; j <= NF -1; j++) { printf("%d\t", grades[j]); } printf("\n"); } bill@net:~/code$ echo "baidu 81 82 33 54 69 73 99"|awk -f grade.sort.awk baidu: 33 54 69 73 81 82 99