Subject:
|
Re: Unix geeks
|
Newsgroups:
|
lugnet.publish
|
Date:
|
Thu, 18 Feb 1999 23:16:16 GMT
|
Viewed:
|
2143 times
|
| |
| |
In lugnet.publish, jasper@janssen.dynip.com (Jasper Janssen) writes:
> On Wed, 17 Feb 1999 19:40:12 GMT, lehman@javanet.com (Todd Lehman)
> wrote:
>
> > cat /etc/words | awk '{print substr($0,1,3)}' | sort | uniq -c | sort
>
> Does uniq mess up the sorting? I don't see why you have to pipe it
> through sort twice otherwise. I mean, Yick.
uniq doesn't mess up sorting, no. uniq -c does, though -- in the sense that it
adds an additional field at the front of the line (man uniq). Technically, in
this case, the first sort isn't necessary because the words file is already
sorted, but
|sort|uniq -c|sort
is a pipefitting idiom, so it's easier to type that than to actually have to
stop and think whether the first sort is necessary. :) Also, if you wanted to
see the last three letters of words instead of the first three letters, then
the first sort would indeed be necessary.
cat /etc/words | awk '{print substr($0,length($0)-3,3)}' |sort|uniq -c|sort
> sort is a slow program anyway, so doing it twice where once would do :)
sort is fast enough for me! It sorts the 93398-line, 906524-byte words file on
my system in .49 seconds*. And the total running times of the two pipe chains
shown above are .90 seconds and 1.23 seconds, respectively.
In any case, we're talking about a one-off, so even if it were 10x slower,
that'd still be pretty peachy. The general idea on one-off's is to save
programmer-time rather than CPU-time. :)
--Todd
* wc can chew through the words file in 1/5 the time that sort can, so sort
would be faster in that case if it was smart enough to check for presequenced
input. But who'd pipe a plain old words file into sort anyway? :)
|
|
Message is in Reply To:
| | Re: Unix geeks
|
| (...) Does uniq mess up the sorting? I don't see why you have to pipe it through sort twice otherwise. I mean, Yick. sort is a slow program anyway, so doing it twice where once would do :) Jasper (26 years ago, 18-Feb-99, to lugnet.publish)
|
58 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|