和系统命令相同的awk命令

cat            |awk '{print}'
cat -s         |awk '{blank = NF == 0 ? ++blank : 0; if (blank <= 1) print;}'
tac            |awk '{t[NR] = $0;}END{for (i = NR; i >= 1; i--) print t;}'
grep patten    |awk '/patten/{print}'
grep -v patten |awk '! /patten/{print}'
head           |awk 'NR <= 10 {print}' 24.sh
head -1        |awk '{print; exit; }' 24.sh
tail           |awk '{t[n++ % 10] = $0}END{for (i = 0; i < 10; i++) print t[n++ % 10];}'
tail -1        |awk '{t = $0}END{print t}'
cut -c 10      |awk '{print substr($0, 10, 1)}'
cut -d: -f4    |awk -F: '{if (NF > 1) print $4; else print;}'
tr A-Z a-z     |awk '{print tolower($0);}' se.sh
tr a-z A-Z     |awk '{print toupper($0);}' se.sh
tr -s ' '      |awk '{print gensub(" +", " ", "g")}'
tr -d '\012'   |awk '{printf "%s", $0}'
wc -l          |awk 'END{printf "% 7d\n", NR-1}'
uniq           |awk '{if (NR == 1 || ln != $0) print; ln = $0;}'
rev            |awk '{l = ""; for (i = length($0); i > 0; i--) printf "%c", substr($0, i, 1); print "";}'
basename       |awk -F'/' '{print $NF}'
dirname        |awk -F'/' '{if (NF <= 1) printf "."; else {OFS="/"; $NF=""; printf "%s", substr($0, 1, length($0) - 1);}}'
xargs          |awk '{printf "%s ", $0}END{print}'
paste -sd:     |awk 'NR > 1{printf ":%s", $0}'
cat -n         |awk '{printf "% 6d  %s\n", NR, $0}'
grep -n        |awk '/ss/{print NR":"$0}'
cp orig new    |awk '{print > "new"}' orig

 » 相关连接:
 » 本栏目最新帖:
 » 精华帖:

Powered by PHPWind v6.0 Code © 2003-08