aboutsummaryrefslogtreecommitdiffstats
path: root/awklib/eg/prog/histsort.awk
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2010-07-16 12:41:09 +0300
committerArnold D. Robbins <arnold@skeeve.com>2010-07-16 12:41:09 +0300
commit8c042f99cc7465c86351d21331a129111b75345d (patch)
tree9656e653be0e42e5469cec77635c20356de152c2 /awklib/eg/prog/histsort.awk
parent8ceb5f934787eb7be5fb452fb39179df66119954 (diff)
downloadegawk-8c042f99cc7465c86351d21331a129111b75345d.tar.gz
egawk-8c042f99cc7465c86351d21331a129111b75345d.tar.bz2
egawk-8c042f99cc7465c86351d21331a129111b75345d.zip
Move to gawk-3.0.0.
Diffstat (limited to 'awklib/eg/prog/histsort.awk')
-rw-r--r--awklib/eg/prog/histsort.awk14
1 files changed, 14 insertions, 0 deletions
diff --git a/awklib/eg/prog/histsort.awk b/awklib/eg/prog/histsort.awk
new file mode 100644
index 00000000..c2c9d1a7
--- /dev/null
+++ b/awklib/eg/prog/histsort.awk
@@ -0,0 +1,14 @@
+# histsort.awk --- compact a shell history file
+# Arnold Robbins, arnold@gnu.ai.mit.edu, Public Domain
+# May 1993
+
+# Thanks to Byron Rakitzis for the general idea
+{
+ if (data[$0]++ == 0)
+ lines[++count] = $0
+}
+
+END {
+ for (i = 1; i <= count; i++)
+ print lines[i]
+}