Much of Linux system administration involves tediously combing through plain-text configuration files. Fortunately, Linux has a rich array of UNIX-derived data extraction utilities, including head, tail, grep, egrep, fgrep, cut, paste, join, awk, and more. This article uses real-world examples that show how these simple command-line programs can make you a better sysadmin. Also look at each data extraction utility and its options, and learn how to apply them to typical day-to-day work files.
Very simple, but quite nicely done. You can imagine giving this to someone for a simple intro to text utilities.
and you can leave people in the dust for instance if you are doing batch conversions on jpegs…..
commandline or script building may take a short while; conversion is done without any operator help. other eople click, edit, save….
the CLI is very powerful and sometimes a big miss on other operating environments. and this article is just a small part of it. Indeed nicely done.
The article discusses GNU grep, GNU awk and a few tools from GNU coreutils package. So what has Linux® got to do with it?
About as much as GNU, since grep, awk, the idea of a pipeline, and all those other tools are from UNIX not GNU.
If we’re going to attribute, let’s attribute to the inventor, not one of the many implementations.
Very true, but the author specifically labelled the tools _Linux_ utilities. So if you want to specifically label something you should use the correct labels, no? 🙂
To everyone in the world but RMS and a few FSF diehards, Linux is the right label.
RMS lost the naming war. time to get over it.
The original point is that these tools are not only available on Linux. Even if you’re only talking about the GNU versions of these tools. You could do the exact same thing on BSD, Windows with Cygwin, any commercial UNIX, Syllable and a whole bunch of other OSes that are not Linux. It’s like calling X11R6 “The Linux GUI”.
X11R6 IS “the Linux GUI”. That statement does NOT imply that X11R6 is specific to Linux.
Most people using a Unix-type system these days are using Linux, therefore this article was targeted to Linux users. Those who don’t know that Linux is similar to Unix probably don’t care, and those who do, know that these facilities are available on Unix too.
X11R6 IS “the Linux GUI”.
and yet, here i am, running X11R7 on my FC5 box…
The GNU implementations are just one among many, but they are quite influential. For example, on some proprietary UNIX systems, the man pages for these commands are sometimes ripped directly from the GNU release, even though the proprietary versions don’t function _exactly_ like the GNU flavor. An example is the COLUMNS environment variable, which in GNU utilities sets the maximum output width, but is ignored (80 columns max) by some proprietary utilities that use GNU documentation. This feature comes in handy when grepping the output of ‘ps ax’ for an executable with a really long path.
There are areas where the proprietary tools are better. For example, I really like the -p’string’ flag for AIX grep, which outputs the entire “paragraph” containing a matching line, where a paragraph is delimited by ‘string’, or ‘
‘ by default. GNU grep doesn’t have this feature, and the GNU coreutils team didn’t respond to my feature request
Given that the GNU approach is to use info files, do you think, just perhaps, that the GNU folk ripped off their man pages from someone else, in a few case?
I thought it was ok until I hit
“Unlike grep, fgrep searches for a string instead of searching for a pattern that matches an expression.”
which does not to me to equate with interpreting the pattern as a list of fixed strings separated by newlines matching on any one of them. Since he treats them as separate utilities is this really about gnu when there is no fgrep program but a link there? Grep just looks at how it was called and if it was called fgrep it does a grep -F. Without enough shell to glue it all together I’d rate that as incomplete and recommend reading the man pages instead. Seems odd including awk and no mention of sed too.