<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:osnews="http://www.osnews.com/rss2#">
	<channel>
		<title>OSNews: </title>
		<link>http://www.osnews.com/story/21004/Awk_and_Sed_One-Liners_Explained</link>
		<description>Exploring the Future of Computing</description>
		<language>en-us</language>
		<copyright>Copyright 2001-2013, David Adams</copyright>
		<webMaster>adam+nospam@osnews.com</webMaster>
		<lastBuildDate>Wed, 19 Jun 2013 00:47:52 GMT</lastBuildDate>
		<image>
			<url>http://www.osnews.com/images/osnews.gif</url>
			<title>OSNews.com</title>
			<link>http://www.osnews.com</link>
		</image>
		<item>
			<title>awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349794</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349794</guid>
			<description>My dad is always singing the praises of Sed and Awk but that's not the only reason I don't like them <img src="/images/emo/wink.gif" alt=";)" /> <br />
<br />
They encourage these one-liners, which just means removing the formatting from code. They use regular expressions, something I consider should be avoided at all costs on account of their impenetrable syntax. My general feeling is that in the time it takes to figure out how to do anything with these tools, you could have just written a Python script to do it.<br />
<br />
I'm sure they were great tools in their day but I really think Python trumps them, replacing all their functionality and throwing in maintainability to boot.<br />
<br />
All that said, these are excellent, useful and well written articles. If I ever find I'm forced to use these things, I shall be eternally greatful that something like this exists.</description>
			<pubDate>Thu, 19 Feb 2009 12:42:00 GMT</pubDate>
			<author>donotreply@osnews.com (Michael)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349799</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349799</guid>
			<description>Depends on the load you have to lift. If I wanted to perform a quick bucket-sort, then Iâd use PHP, VBScript or any other non-compact scripting language. But if I had to make a syntax processor (like I have: <a href="http://camendesign.com/code/remarkable" rel="nofollow">http://camendesign.com/code/remarkable</a> ),  then thereâs no way Iâd do it without regex. Iâd have to practically reimplement a hard-coded regex engine in the process of handling the byte-by-byte matching for all the use-cases.<br />
 <br />
 Sure the likes of sed and awk are hard to use, but thereâs wizards out there who can, and those of us who canât -- itâs not ours to say that one tool is better than the other, when in the right hands.<br />
 <br />
 Reminds me of this T-Shirt - <a href="http://www.thinkgeek.com/tshirts-apparel/unisex/frustrations/374d/?cpg=ab" rel="nofollow">http://www.thinkgeek.com/tshirts-apparel/unisex/frustrations/374d/?...</a>  - &quot;Go away or I will replace you with a very small shell script.&quot;Edited 2009-02-19 13:08 UTC</description>
			<pubDate>Thu, 19 Feb 2009 13:06:00 GMT</pubDate>
			<author>donotreply@osnews.com (Kroc)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>PDF</title>
			<link>http://www.osnews.com/thread?349802</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349802</guid>
			<description>Just liked. It would be nice to have a PDF version with all concatenated.<br />
<br />
Thank you.</description>
			<pubDate>Thu, 19 Feb 2009 13:19:00 GMT</pubDate>
			<author>donotreply@osnews.com (dbolgheroni)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: PDF</title>
			<link>http://www.osnews.com/thread?349805</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349805</guid>
			<description>Yep. I will publish two free ebooks, one on Awk one-liners and one on Sed one-liners.<br />
<br />
Ps. you can subscribe to my posts on my blog so that you don't miss them.</description>
			<pubDate>Thu, 19 Feb 2009 13:25:00 GMT</pubDate>
			<author>donotreply@osnews.com (pkrumins)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349810</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349810</guid>
			<description>First off, Python is not available anywhere, but awk and sed are (almost). Maybe perl is better than python, but anyway, that is not the point.<br />
 awk and sed scripts are not there to be maintained. They are not developer tools. They are administrator tools and they are there to make it easy for you to edit or search files quickly. sed and awk are used for one-shot commands in 95% of the cases. Once you have the result, there is no need to maintain the command at all.<br />
How many lines do you have to write in python, just to open a file and read it? In sed or awk, that's 0. The file is open and parsed. There is no way you can make it faster in python.Edited 2009-02-19 14:22 UTC</description>
			<pubDate>Thu, 19 Feb 2009 14:18:00 GMT</pubDate>
			<author>donotreply@osnews.com (spiderman)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349811</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349811</guid>
			<description>I've never considered awk hard to use. You can learn the basics in about thirty pages. Have you ever sat down and read &quot;Effective GAWK Programming&quot;?<br />
<br />
<a href="http://www.gnu.org/software/gawk/manual/gawk.html" rel="nofollow">http://www.gnu.org/software/gawk/manual/gawk.html</a><br />
<br />
sed is not hard either. Python is great too, but for little quick jobs awk is great. awk can be just as maintainable if you write it cleanly (and I've seen python code that is a mess, because you can write messy Python too.) But for a one liner, who cares if it is maintainable? You use it once then throw it out!</description>
			<pubDate>Thu, 19 Feb 2009 14:18:00 GMT</pubDate>
			<author>donotreply@osnews.com (massysett)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Comment by timefortea</title>
			<link>http://www.osnews.com/thread?349815</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349815</guid>
			<description>Excellent.</description>
			<pubDate>Thu, 19 Feb 2009 14:28:00 GMT</pubDate>
			<author>donotreply@osnews.com (timefortea)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349818</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349818</guid>
			<description>Chinese (traditional/simplified) looks pretty incomprehensible to me but evidently a 1,000,000,000+ people manage to get by. <br />
<br />
Without a doubt it's unwelcoming to those who don't understand it, but for those who do...</description>
			<pubDate>Thu, 19 Feb 2009 14:58:00 GMT</pubDate>
			<author>donotreply@osnews.com (JMcCarthy)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349820</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349820</guid>
			<description>That's why I wrote the articles, to explain them.<br />
<br />
It is unfortunate that only the first paragraph shows on hacker news website.<br />
<br />
Click on Read  More to find links to my articles!</description>
			<pubDate>Thu, 19 Feb 2009 15:08:00 GMT</pubDate>
			<author>donotreply@osnews.com (pkrumins)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>My Favorite</title>
			<link>http://www.osnews.com/thread?349837</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349837</guid>
			<description>fretinator ~ $ sed &quot;W+F rU $@y!n6&quot;</description>
			<pubDate>Thu, 19 Feb 2009 16:54:00 GMT</pubDate>
			<author>donotreply@osnews.com (fretinator)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349838</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349838</guid>
			<description>Are you serious?!<br />
<br />
Regular expressions are awesome, and definately a core technology, even when using Python.<br />
<br />
You are either a troll or completely clueless. soz.</description>
			<pubDate>Thu, 19 Feb 2009 17:02:00 GMT</pubDate>
			<author>donotreply@osnews.com (appel)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>pdf version?</title>
			<link>http://www.osnews.com/thread?349839</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349839</guid>
			<description>Very nice! But I'm going to wait for the PDF file that'll include all the tutorials (not that I don't like your blog or anything, hehe).</description>
			<pubDate>Thu, 19 Feb 2009 17:02:00 GMT</pubDate>
			<author>donotreply@osnews.com (maaxx)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349850</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349850</guid>
			<description>I wouldn't really say that AWK and SED encourage these one liners, rather I would say they enable one liners.<br />
<br />
When you work with these tools to the comfort level that you can just spit out these one liners, that's where this facility becomes a powerful command line tool rather than a just a scripting language.<br />
<br />
I don't think twice about just pounding out long pipelines in the shell, or short scripts. Similarly, if it can fit on one line, I'll consider doing the same with AWK or SED.<br />
<br />
These are one off events that never last beyond perhaps the shell history.</description>
			<pubDate>Thu, 19 Feb 2009 17:49:00 GMT</pubDate>
			<author>donotreply@osnews.com (whartung)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>great</title>
			<link>http://www.osnews.com/thread?349854</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349854</guid>
			<description>Great contribution, thank you!</description>
			<pubDate>Thu, 19 Feb 2009 18:08:00 GMT</pubDate>
			<author>donotreply@osnews.com (jwwf)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Awk and Sed One-Liners Explained?</title>
			<link>http://www.osnews.com/thread?349855</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349855</guid>
			<description>If you have to explain one-liners, then they aren't funny.</description>
			<pubDate>Thu, 19 Feb 2009 18:14:00 GMT</pubDate>
			<author>donotreply@osnews.com (tupp)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349856</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349856</guid>
			<description><a href="http://xkcd.com/208/" rel="nofollow">http://xkcd.com/208/</a><br />
<br />
and of course:<br />
<br />
<a href="http://xkcd.com/353/" rel="nofollow">http://xkcd.com/353/</a><br />
<br />
and for what it's worth; Python &gt; Perl <br />
<br />
:)</description>
			<pubDate>Thu, 19 Feb 2009 18:17:00 GMT</pubDate>
			<author>donotreply@osnews.com (poundsmack)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349861</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349861</guid>
			<description><div class="cquote">How many lines do you have to write in python, just to open a file and read it? </div><br />
<br />
One. cont = open(&quot;file.txt&quot;).read().<br />
<br />
Or <br />
<br />
for line open(&quot;file.txt&quot;): do_stuff_with(line)<br />
<br />
If that means significant extra work for you, you need a harder problem domain ;-)</description>
			<pubDate>Thu, 19 Feb 2009 19:06:00 GMT</pubDate>
			<author>donotreply@osnews.com (vivainio)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: great</title>
			<link>http://www.osnews.com/thread?349880</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349880</guid>
			<description>Just finished printing the two text files. Allthough sed and awk do already belong to my usual daily tools, I like to learn something new every day. Many thanks!</description>
			<pubDate>Thu, 19 Feb 2009 20:23:00 GMT</pubDate>
			<author>donotreply@osnews.com (Doc Pain)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349887</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349887</guid>
			<description><div class="cquote">They use regular expressions, something I consider should be avoided at all costs on account of their impenetrable syntax. </div><br />
<br />
You obviously subscribe to the school of thought that says someone who uses regular expressions to solve a problem now has two problems. <img src="/images/emo/smile.gif" alt=";)" /> <br />
<br />
True to a degree - they tend to be overused, or made overly complicated by people who think that because they can read it, so will the next person who comes along. But they're also an extremely powerful tool, for which there really isn't any practical alternative - e.g if you want to validate that a string matches a pattern, you can use a simple regex to do it, or you can write your own parser. And writing your own parser is almost never the right answer.</description>
			<pubDate>Thu, 19 Feb 2009 20:55:00 GMT</pubDate>
			<author>donotreply@osnews.com (Delgarde)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349919</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349919</guid>
			<description>This manual has 360 pages (pdf-version). I would like to learn the basics of awk and has already bought a German cheap reference by O'Reilly.<br />
Do you know a shorter tutorial?</description>
			<pubDate>Thu, 19 Feb 2009 23:11:00 GMT</pubDate>
			<author>donotreply@osnews.com (AtariFan)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[4]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349929</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349929</guid>
			<description><div class="cquote">Do you know a shorter tutorial? </div><br />
<br />
Yep:  <a href="http://www.grymoire.com/Unix/Awk.html" rel="nofollow">http://www.grymoire.com/Unix/Awk.html</a></description>
			<pubDate>Thu, 19 Feb 2009 23:39:00 GMT</pubDate>
			<author>donotreply@osnews.com (pkrumins)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349936</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349936</guid>
			<description>Regular expressions are very powerful but they cover a limited range of problems between the the trivial (the title is the example given to trim whitespace) and the very complex.<br />
<br />
These old UNIX tools were terific in their day when they were the only way of doing things. But I think the fact that they continue to get so much air time has more to do with the fact that it's fun play with them. They're like crossword clues.<br />
<br />
Don't underestimate what you can do with Python. It's trivial to read in a text file and split it into an array using whatever seperator you want. Modern scripting languages have tremendously powerful string handling functions and they do all this using real words. RE's are there if you need them but you very rarely do.<br />
<br />
My work rate isn't limited by the speed at which I type, it's limited by the speed at which I think (that is, severely limited). I think better if I'm not having to translate everything via these arcane hieroglyphics.<br />
<br />
I wish people were better at distinguishing between a genuinely held (and valid) opinion and a troll. It is only my opinion.</description>
			<pubDate>Fri, 20 Feb 2009 00:14:00 GMT</pubDate>
			<author>donotreply@osnews.com (Michael)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349939</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349939</guid>
			<description>no, there is not a billion people who can read Chinese, unlike popular believe, and there is a reason for that. Guess why they had to 'invent' simplified on top of traditional? The same applies to all other fancy writing systems.<br />
<br />
However, the point is that different tools serve different purposes and you may get along with it without knowing it inside out. I wished I knew any which one of these to some extent, but absent an actual need, I cannot justify putting the required time into it. You will know better...</description>
			<pubDate>Fri, 20 Feb 2009 00:25:00 GMT</pubDate>
			<author>donotreply@osnews.com (Googol)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Benefits of Awk and Sed</title>
			<link>http://www.osnews.com/thread?349947</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349947</guid>
			<description>It's been said before but you don't always have Python or Perl available and knowing Awk and Sed can be a life saver.  They are also great tools for formatting output for input into other programs.  An entire scripting language is overkill for that kind of work.</description>
			<pubDate>Fri, 20 Feb 2009 02:25:00 GMT</pubDate>
			<author>donotreply@osnews.com (abraxas)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?349949</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?349949</guid>
			<description><div class="cquote">These old UNIX tools were terific in their day when they were the only way of doing things. But I think the fact that they continue to get so much air time has more to do with the fact that it's fun play with them. They're like crossword clues. </div><br />
<br />
I think it's because most people still think that bringing Python into the equation for simple formatting and extracting information from output is overkill.  If I'm just writing a simple filter to be used between the output of one program and the input of another program on my own machine then I'm just going to use the shell, sed, and awk.  If I want to distribute some kind of application that performs all the functions of my script I'm probably going to want to develop it in a language like Python or Perl.</description>
			<pubDate>Fri, 20 Feb 2009 02:48:00 GMT</pubDate>
			<author>donotreply@osnews.com (abraxas)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?350024</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350024</guid>
			<description><div class="cquote">Modern scripting languages have tremendously powerful string handling functions and they do all this using real words. RE's are there if you need them but you very rarely do. </div><br />
Depends on how you think (hammer &amp; nails, anyone?). I always think of a regexp solution to any given problem (that I solve in Python) first - typically, I slurp in a string, run re.findall on it, then do a for loop over the resulting tuples.<br />
<br />
Regular expressions have the advantage of being insanely fast, and very easy to work with. I agree that for the problems that are trivial enough to solve with awk/sed, regexs may be overkill - you can just do s.replace(), s.split() and s.join().</description>
			<pubDate>Fri, 20 Feb 2009 17:56:00 GMT</pubDate>
			<author>donotreply@osnews.com (vivainio)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?350033</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350033</guid>
			<description><div class="cquote"><br />
for line open(&quot;file.txt&quot;): do_stuff_with(line)<br />
 </div><br />
That should be:<br />
for line <b>in</b> open(&quot;file.txt&quot;): do_stuff_with(line)<br />
<br />
<div class="cquote">If that means significant extra work for you, you need a harder problem domain </div><br />
Agreed.</description>
			<pubDate>Fri, 20 Feb 2009 18:50:00 GMT</pubDate>
			<author>donotreply@osnews.com (RandomGuy)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[4]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?350066</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350066</guid>
			<description><div class="cquote"><br />
 for line open(&quot;file.txt&quot;): do_stuff_with(line)<br />
 </div><br />
 That should be:<br />
<div class="cquote"><br />
 for line <b>in</b> open(&quot;file.txt&quot;): do_stuff_with(line)<br />
 </div> <br />
<br />
 It's neither. It should be:<br />
 <br />
<br />
 with file(&quot;file.txt&quot;) as fd:<br />
  for line in fd:<br />
   do_stuff_with(line)<br />
Edited 2009-02-20 23:27 UTC</description>
			<pubDate>Fri, 20 Feb 2009 23:26:00 GMT</pubDate>
			<author>donotreply@osnews.com (pkrumins)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[5]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?350087</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350087</guid>
			<description><div class="cquote"> It's neither. It should be: with file(&quot;file.txt&quot;) as fd:<br />
 </div><br />
Such pedantic diligence ('with' statement) is probably not appropriate in a thread that mentions awk/sed. Using with statement is needed when you are worrying about closing file handles in some-future-version-of-python that may not do reference counting (which could imply that the file handle would remain open until the next garbage collection cycle).<br />
<br />
Not really something you need to worry about if you are mainly targeting your normal python installation. Furthermore, a linear script can just close() the filehandle without caring about exceptions (because it would just exit the process and close everything anyway).</description>
			<pubDate>Sat, 21 Feb 2009 08:52:00 GMT</pubDate>
			<author>donotreply@osnews.com (vivainio)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Thank you for this</title>
			<link>http://www.osnews.com/thread?350120</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350120</guid>
			<description>Many thanks for this - particularly for the cheat sheet which is very convenient, but the one liners are excellent and well commented too.  We can always learn.<br />
<br />
The nice thing about awk is, its lightweight,  reasonably fast, terse, intuitive once you know and are used to it. What its good for, its great for. I think of it a bit like an old pruning knife with a well sharpened slightly worn blade and a handle polished with use, an Opinel for instance.  Its safe, cheap, its sharp, it just fits in the hand, and you hardly think about it any more.  And would be very sorry indeed if you ever lost it.</description>
			<pubDate>Sat, 21 Feb 2009 17:47:00 GMT</pubDate>
			<author>donotreply@osnews.com (alcibiades)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: PDF</title>
			<link>http://www.osnews.com/thread?350122</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350122</guid>
			<description>If you use GNOME just File-&gt;Print-&gt;Print to file.</description>
			<pubDate>Sat, 21 Feb 2009 18:35:00 GMT</pubDate>
			<author>donotreply@osnews.com (abraxas)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: awk '{ gsub(/^[ \t]+|[ \t]+$/, &amp;quot;&amp;quot;); print }'</title>
			<link>http://www.osnews.com/thread?350219</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?350219</guid>
			<description>If you want to convince me python is better than sed/awk for this kind of tasks you should write all the one-liners in python. Then I will listen to you.</description>
			<pubDate>Sun, 22 Feb 2009 21:21:00 GMT</pubDate>
			<author>donotreply@osnews.com (yiyus)</author>
			<category>Comments</category>
		</item>
	</channel>
</rss>
