<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Book</title>
	<atom:link href="http://nixshell.wordpress.com/2008/04/23/book/feed/" rel="self" type="application/rss+xml" />
	<link>http://nixshell.wordpress.com/2008/04/23/book/</link>
	<description>UNIX / Linux Shell Hints and Tips&#160;&#160;&#160;&#160;&#160;&#160;(a http://steve-parker.org/sh/sh.shtml subproject)</description>
	<lastBuildDate>Sun, 31 Mar 2013 18:54:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: unixshell</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5331</link>
		<dc:creator><![CDATA[unixshell]]></dc:creator>
		<pubDate>Thu, 07 Oct 2010 23:20:33 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5331</guid>
		<description><![CDATA[Just over 2 years later, I am happy to report some good news; the awkward employer has removed himself from the equation (and from the country, and from the taxman, and from such trivial annoyances as paying salaries and expenses to his employees, but that&#039;s another story).

Now that I am a truly free agent, the book project is back on. Again, please comment with anything that you would like to see.]]></description>
		<content:encoded><![CDATA[<p>Just over 2 years later, I am happy to report some good news; the awkward employer has removed himself from the equation (and from the country, and from the taxman, and from such trivial annoyances as paying salaries and expenses to his employees, but that&#8217;s another story).</p>
<p>Now that I am a truly free agent, the book project is back on. Again, please comment with anything that you would like to see.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: unixshell</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5200</link>
		<dc:creator><![CDATA[unixshell]]></dc:creator>
		<pubDate>Thu, 03 Jul 2008 00:51:04 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5200</guid>
		<description><![CDATA[Many thanks again; I am really inspired by the quality of the quantity and level of feedback on this subject.

Unfortunately, my employer has suggested that they&#039;re not too happy with me writing this in the 128 hours a week that I don&#039;t work for them; for now, I&#039;m going to let the original project lie, though I am more inclined to write a book based upon suggestions posted here than on the ideas of a random publisher wanting to publish yet another half-ton book..... 

Keep these excellent ideas coming: Cutting out the middle man could well be a good thing, after all!]]></description>
		<content:encoded><![CDATA[<p>Many thanks again; I am really inspired by the quality of the quantity and level of feedback on this subject.</p>
<p>Unfortunately, my employer has suggested that they&#8217;re not too happy with me writing this in the 128 hours a week that I don&#8217;t work for them; for now, I&#8217;m going to let the original project lie, though I am more inclined to write a book based upon suggestions posted here than on the ideas of a random publisher wanting to publish yet another half-ton book&#8230;.. </p>
<p>Keep these excellent ideas coming: Cutting out the middle man could well be a good thing, after all!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tresh</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5199</link>
		<dc:creator><![CDATA[tresh]]></dc:creator>
		<pubDate>Wed, 02 Jul 2008 16:48:15 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5199</guid>
		<description><![CDATA[One of the premium requirements, in my book, as a quick reference section in logical groups. For example, &quot;Section I - Loops. Section II - Conditional expressions. Section III - Bitwise expressions.&quot;  Something of that nature.

On the rare occasions I&#039;ve been up 40 hours and I&#039;m parsing an &quot;if&quot; statement wrong, finding it in the bash manpage is.. Well, you can imagine, I&#039;m sure. XD]]></description>
		<content:encoded><![CDATA[<p>One of the premium requirements, in my book, as a quick reference section in logical groups. For example, &#8220;Section I &#8211; Loops. Section II &#8211; Conditional expressions. Section III &#8211; Bitwise expressions.&#8221;  Something of that nature.</p>
<p>On the rare occasions I&#8217;ve been up 40 hours and I&#8217;m parsing an &#8220;if&#8221; statement wrong, finding it in the bash manpage is.. Well, you can imagine, I&#8217;m sure. XD</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: unixshell</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5194</link>
		<dc:creator><![CDATA[unixshell]]></dc:creator>
		<pubDate>Thu, 19 Jun 2008 22:16:05 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5194</guid>
		<description><![CDATA[Thanks for so many really detailed responses; I&#039;m blown away.

Lots of great stuff there, DJ; I think I&#039;ve got them all covered (no &quot;installation&quot;, though I have got a &quot;history&quot; chapter... it&#039;s really short, honestly!). The series that I&#039;m writing it for has a policy to have lots of examples, so there will be lots of that, and expanding them to wider, more general uses too.]]></description>
		<content:encoded><![CDATA[<p>Thanks for so many really detailed responses; I&#8217;m blown away.</p>
<p>Lots of great stuff there, DJ; I think I&#8217;ve got them all covered (no &#8220;installation&#8221;, though I have got a &#8220;history&#8221; chapter&#8230; it&#8217;s really short, honestly!). The series that I&#8217;m writing it for has a policy to have lots of examples, so there will be lots of that, and expanding them to wider, more general uses too.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dj</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5191</link>
		<dc:creator><![CDATA[dj]]></dc:creator>
		<pubDate>Wed, 18 Jun 2008 03:22:27 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5191</guid>
		<description><![CDATA[I have plenty of programming experience, but it was a little tricky picking up Bash.  I started with the manpage,  bash reference (which is from Network Theory), and FAQ.  I reviewed briefly TLDP two Bash docs. However, the web site, http://linuxcommand.org/writing_shell_scripts.php, was my salvation ;-). It helped me put it all together and develop complete scripts that included getopts, heredoc help, functions, and trap, among many things. The FAQ, GUIDE, PITFALLS at http://wooledge.org:8000/BashFAQ were also helpful.

There is a lot out there, but a lot is old and plain wrong and when you are learning, it doesn&#039;t help :-)  What seems like little things can trip you up big time.  Suggestions made here are good, especially the how it works.   I&#039;d say cover Bash expansion in details, all  8 of them (brace, tilde, parameter, command, arithmetic, process, splitting, globbing),  quotes, $@ vs $*,  strings, numerics, and arrays, the string and numeric operators, as well as command pipeline. Took me awhile to understand &amp;&amp; and &#124;&#124; in a command pipe verses an expression - context is everything.  Have good examples, and maybe a complete application, slowly building it up.  Stay away from chapters on installation and history ;-)

Is the test command or [, being replaced with [[?   I&#039;ve seen lots of examples that use -eq in [[ but -eq is a [ operator.  The whole [, [[, ((, $((, &amp;&amp;, &#124;&#124;, -o, -a, etc could be covered, maybe the topic is building successful expressions.  

I just found your site while looking for bash specifics, and the organization of the tutorial looks good.  I&#039;m going to review it in more detail.  Thx]]></description>
		<content:encoded><![CDATA[<p>I have plenty of programming experience, but it was a little tricky picking up Bash.  I started with the manpage,  bash reference (which is from Network Theory), and FAQ.  I reviewed briefly TLDP two Bash docs. However, the web site, <a href="http://linuxcommand.org/writing_shell_scripts.php" rel="nofollow">http://linuxcommand.org/writing_shell_scripts.php</a>, was my salvation <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . It helped me put it all together and develop complete scripts that included getopts, heredoc help, functions, and trap, among many things. The FAQ, GUIDE, PITFALLS at <a href="http://wooledge.org:8000/BashFAQ" rel="nofollow">http://wooledge.org:8000/BashFAQ</a> were also helpful.</p>
<p>There is a lot out there, but a lot is old and plain wrong and when you are learning, it doesn&#8217;t help <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />   What seems like little things can trip you up big time.  Suggestions made here are good, especially the how it works.   I&#8217;d say cover Bash expansion in details, all  8 of them (brace, tilde, parameter, command, arithmetic, process, splitting, globbing),  quotes, $@ vs $*,  strings, numerics, and arrays, the string and numeric operators, as well as command pipeline. Took me awhile to understand &amp;&amp; and || in a command pipe verses an expression &#8211; context is everything.  Have good examples, and maybe a complete application, slowly building it up.  Stay away from chapters on installation and history <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Is the test command or [, being replaced with [[?   I&#8217;ve seen lots of examples that use -eq in [[ but -eq is a [ operator.  The whole [, [[, ((, $((, &amp;&amp;, ||, -o, -a, etc could be covered, maybe the topic is building successful expressions.  </p>
<p>I just found your site while looking for bash specifics, and the organization of the tutorial looks good.  I&#8217;m going to review it in more detail.  Thx</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: unixshell</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5188</link>
		<dc:creator><![CDATA[unixshell]]></dc:creator>
		<pubDate>Sat, 24 May 2008 23:38:43 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5188</guid>
		<description><![CDATA[Thanks for that, too. As you say, bash is being more and more widely used these days, with traditional Unix systems as well as Linux. As you mention, for system scripts, Bourne compatibility is essential; for the majority of uses, Bash offers much more power and flexibility.

Therefore, both need to be covered; the way I see this book dealing with that issue, is to generally go for Bash stuff, but to make it clear that certain things are different (or sometimes impossible) in Bourne shell.

Both comments so far have also mentioned the importance of how the shell interacts with external utilities; in itself, the shell is a useful, but limited language... with sed, awk, grep, find, and a whole bunch of other tools, combined with the *nix fork/exec mechanism, the whole thing really comes to life - with pipes, redirections, and so on. It&#039;s a bit of a cliche, but &quot;everything is a file&quot; is a really important metaphor. Similarly, chmod / mknod / etc etc are all relevant to the overall picture.]]></description>
		<content:encoded><![CDATA[<p>Thanks for that, too. As you say, bash is being more and more widely used these days, with traditional Unix systems as well as Linux. As you mention, for system scripts, Bourne compatibility is essential; for the majority of uses, Bash offers much more power and flexibility.</p>
<p>Therefore, both need to be covered; the way I see this book dealing with that issue, is to generally go for Bash stuff, but to make it clear that certain things are different (or sometimes impossible) in Bourne shell.</p>
<p>Both comments so far have also mentioned the importance of how the shell interacts with external utilities; in itself, the shell is a useful, but limited language&#8230; with sed, awk, grep, find, and a whole bunch of other tools, combined with the *nix fork/exec mechanism, the whole thing really comes to life &#8211; with pipes, redirections, and so on. It&#8217;s a bit of a cliche, but &#8220;everything is a file&#8221; is a really important metaphor. Similarly, chmod / mknod / etc etc are all relevant to the overall picture.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tsuehpsyde</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5187</link>
		<dc:creator><![CDATA[tsuehpsyde]]></dc:creator>
		<pubDate>Sat, 24 May 2008 16:21:06 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5187</guid>
		<description><![CDATA[I&#039;m not all too concerned about what you write about, so long as you write it. ;) Your guide online has been pretty useful to me (got me back into shell scripting, and probably going to move to some other scripting languages as well) and I&#039;d have been stuck without it. So I&#039;m sure whatever you write in a book will be good. My only concern is to keep it up to date (that means using bash), since too many shell scripting guides are painfully out of date with stuff like ksh, csh, and the like. Maybe someone uses those in production environments for cgi scripts or cronjobs, but I&#039;ve never seen it. The main focus should be bash, as that&#039;s what&#039;s here and what is used most often.

Just be sure to have a section heavily weighted on incorporating sed and awk, as those two little guys bring shell scripting up a notch or two.

Keep up the good work. :)]]></description>
		<content:encoded><![CDATA[<p>I&#8217;m not all too concerned about what you write about, so long as you write it. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Your guide online has been pretty useful to me (got me back into shell scripting, and probably going to move to some other scripting languages as well) and I&#8217;d have been stuck without it. So I&#8217;m sure whatever you write in a book will be good. My only concern is to keep it up to date (that means using bash), since too many shell scripting guides are painfully out of date with stuff like ksh, csh, and the like. Maybe someone uses those in production environments for cgi scripts or cronjobs, but I&#8217;ve never seen it. The main focus should be bash, as that&#8217;s what&#8217;s here and what is used most often.</p>
<p>Just be sure to have a section heavily weighted on incorporating sed and awk, as those two little guys bring shell scripting up a notch or two.</p>
<p>Keep up the good work. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: unixshell</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5186</link>
		<dc:creator><![CDATA[unixshell]]></dc:creator>
		<pubDate>Mon, 05 May 2008 21:56:41 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5186</guid>
		<description><![CDATA[Thanks kamper - really good points, especially about the &quot;how it works&quot;, not &quot;how to do it&quot; - that makes a big difference.]]></description>
		<content:encoded><![CDATA[<p>Thanks kamper &#8211; really good points, especially about the &#8220;how it works&#8221;, not &#8220;how to do it&#8221; &#8211; that makes a big difference.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kamper</title>
		<link>http://nixshell.wordpress.com/2008/04/23/book/#comment-5185</link>
		<dc:creator><![CDATA[kamper]]></dc:creator>
		<pubDate>Mon, 05 May 2008 14:49:45 +0000</pubDate>
		<guid isPermaLink="false">http://nixshell.wordpress.com/?p=66#comment-5185</guid>
		<description><![CDATA[One of the reasons Jeff Friedl&#039;s regular expressions book is so good is that it spent a lot of time discussing how a regex engine could/would be implemented (but not at such a low level as to be tedious).  Knowing the underlying concepts means not having to memorize a bunch of random stuff because you can pretty much predict how it&#039;s going to work.

Accordingly, I think it would be good to have a couple of chapters on the implementation of the rudimentary concepts of a bourne shell.  How is script parsed?  When and how is each fragment executed and how are the outputs and inputs piped around?  The more conceptual and portable (not a bunch of bashisms) the better.  Going light on the various unix utilities would also be good.  Yes, they&#039;re an integral part of any script, but they&#039;re easy to learn via manpages.  Explaining utils like test and expr would be necessary but I&#039;d like to read &quot;here&#039;s roughly what they do, now go read the manpage if you want to follow along.&quot;

Also, I&#039;d personally like to have a bit of a csh survival guide for sh users, but I can probably find that online.  But a deeper look at the underlying differences (why are they different?) could be interesting.]]></description>
		<content:encoded><![CDATA[<p>One of the reasons Jeff Friedl&#8217;s regular expressions book is so good is that it spent a lot of time discussing how a regex engine could/would be implemented (but not at such a low level as to be tedious).  Knowing the underlying concepts means not having to memorize a bunch of random stuff because you can pretty much predict how it&#8217;s going to work.</p>
<p>Accordingly, I think it would be good to have a couple of chapters on the implementation of the rudimentary concepts of a bourne shell.  How is script parsed?  When and how is each fragment executed and how are the outputs and inputs piped around?  The more conceptual and portable (not a bunch of bashisms) the better.  Going light on the various unix utilities would also be good.  Yes, they&#8217;re an integral part of any script, but they&#8217;re easy to learn via manpages.  Explaining utils like test and expr would be necessary but I&#8217;d like to read &#8220;here&#8217;s roughly what they do, now go read the manpage if you want to follow along.&#8221;</p>
<p>Also, I&#8217;d personally like to have a bit of a csh survival guide for sh users, but I can probably find that online.  But a deeper look at the underlying differences (why are they different?) could be interesting.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
