- 論壇徽章:
- 0
|
寫了個(gè)通用點(diǎn)的,不論幾行X幾列都可以,并格式化了輸出
- [root@mylinux tmp]# cat file1
- 1 2
- 數(shù)學(xué) 80 60
- 語文 70 90
- [root@mylinux tmp]# awk 'NR==1{row=NF;for (i=1;i<=row;i++) r[i]=$i;v=r[1];gsub(/[^#]/," ",v)}NR>1{c[NR-1]=$1;for (i=1;i<=row;i++) r[i]=r[i]"\t"$(i+1)}END{printf v;for (i=1;i<=NR-1;i++) printf "\t"c[i];print "";for (i=1;i<=row;i++) print r[i]}' file1
- 數(shù)學(xué) 語文
- 1 80 70
- 2 60 90
復(fù)制代碼
- [root@mylinux tmp]# cat file
- 001 002 003
- 數(shù)學(xué) 80 60 88
- 語文 70 90 77
- 英語 81 92 66
- 化學(xué) 71 82 76
- [root@mylinux tmp]# awk 'NR==1{row=NF;for (i=1;i<=row;i++) r[i]=$i;v=r[1];gsub(/[^#]/," ",v)}NR>1{c[NR-1]=$1;for (i=1;i<=row;i++) r[i]=r[i]"\t"$(i+1)}END{printf v;for (i=1;i<=NR-1;i++) printf "\t"c[i];print "";for (i=1;i<=row;i++) print r[i]}' file
- 數(shù)學(xué) 語文 英語 化學(xué)
- 001 80 70 81 71
- 002 60 90 92 82
- 003 88 77 66 76
復(fù)制代碼
[ 本帖最后由 ywlscpl 于 2009-5-27 22:05 編輯 ] |
|