PageSourceSearch

https://steve-parker.org/publications/

html steve-parker.org collected 2026-10-02 06:56:25 UTC 11,926 bytes, 216 lines download raw bytes

1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
5<meta name="theme-color" content="#3e4495" />
6<meta property='og:type' content='website' />
7<title>Publications  [ steve-parker.org ]</title>
8
9<script src="/js/jquery-1.5.1.min.js" type="text/javascript"></script>
9
10
11<!--<link href='http://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700&v2' rel='stylesheet' type='text/css'>-->
12
13<link href='/css/ubuntu/stylesheet.css' rel='stylesheet' type='text/css'>
14<link href="/css/screen.css" rel="stylesheet" type="text/css" />
15<link href="/css/menu.css" rel="stylesheet" type="text/css" />
16<link href="/css/footmenu.css" rel="stylesheet" type="text/css" />
17<link rel="stylesheet" type="text/css" href="/css/stickyfooter.css"/>
18
19<link rel="stylesheet" type="text/css" href="/prettify/prettify.css">
20<script src="/prettify/prettify.js" type="text/javascript"></script>
vendor: 83 bytes, lines 20-22
20
21     <script src="https://www.google.com/recaptcha/api.js" async defer></script>
22 
22<script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
22
23
24
25<script src="/js/menucontrol.js" type="text/javascript"></script>
25
26
27<!--[if !IE 7]>
28	<style type="text/css">
29		#wrap {display:table;height:100%}
30	</style>
31<![endif]-->
32
33</head>
34<body onload="prettyPrint()">
35<div id="wrap">
36	<div id="main">
37		<div id="content">
38
39<h1>Publications</h1>
40<p>Publications by Steve Parker</p>
41<p>You can also view the Author Page at <a href="http://amazon.com/author/unixsteve">http://amazon.com/author/unixsteve</a>.</p>
42<h2>Shell Scripting: Expert Recipes for Linux, Bash and more</h2>
43<a href="#preview_shell_scripting">Preview</a>
44<img style="float:right" src="ss-small.jpg">
45<p>Published: August 2011.<br/>
46Format: Paperback, eBook<br/>
47Pages: 600<br/>
48RRP: £39.99 / €40.00 / $49.99<br/>
49<a href="http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1118024486,descCd-description.html">Wiley.com</a>
50<br/>
51<a href="https://www.amazon.com/dp/1118024486/ref=as_li_qf_sp_asin_til?tag=steveparkeror-20&camp=14573&creative=327641&linkCode=as1&creativeASIN=1118024486&adid=1TRFV7NB5E0NTHQWV4CV&&ref-refURL=http%3A%2F%2Fsteve-parker.org%2Fpublications%2F">Amazon.com</a>
52</p>
53
54<h2>Shell Scripting Tutorial</h2>
55<a href="#preview_shell_scripting_tutorial">Preview</a>
56<img style="float:right" src="sst.jpg">
57<p>Published: Mar 2013<br/>
58Format: Online, PDF, eBook, Paperback<br/>
59Pages: 85<br/>
60PDF: <a href="http://gum.co/shellscript">http://gum.co/shellscript</a>
61<br/>
62<a href="https://www.amazon.com/dp/B00C2EGNSA/ref=as_li_ss_til?tag=steveparkeror-20">Amazon Kindle</a>
63<br/>
64<a href="https://www.amazon.com/Shell-Scripting-Tutorial-Steve-Parker/dp/1499546653">Paperback (USA)</a><br />
65<a href="https://www.amazon.co.uk/Shell-Scripting-Tutorial-Steve-Parker/dp/1499546653">Paperback (UK)</a><br />
66For Paperback copies in other countries, search for ISBN 1499546653 or ISBN 978-1499546651.<br />
67<br/>
68<a href="http://nixshell.wordpress.com/2013/03/29/shell-scripting-tutorial-on-kindle/">More information</a>
69</p>
70
71<h2>How to Create an RPM</h2>
72<h3>A practical guide to creating a Linux RPM</h3>
73<a href="#preview_rpm">Preview</a>
74<img style="float:right" src="rpm.jpg">
75<p>Published: March 2016<br/>
76Format: Paperback, eBook<br/>
77<a href="http://amzn.to/1TtU9Av">amzn.com/B01CBZ6SXY</a><br />
78<a href="http://amzn.to/1LdrOfp">amazon.co.uk/dp/B01CBZ6SXY</a><br />
79
80<!--
81<h2>How to Build a LAMP (Linux, Apache, MySQL, PHP) Server</h2>
82<h3>From Initial Installation to Designing and Building a Working Application</h3>
83<a href="#preview_lamp">Preview</a>
84<img style="float:right" src="lamp-all.png">
85<p>Published: June 2013<br/>
86Format: Online, PDF, Paperback, eBook<br/>
87<a href="http://steve-parker.org/lamp/">http://steve-parker.org/lamp/</a>
88<br />
89<a href="http://www.amazon.com/gp/product/B00DAI6ATO/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=B00DAI6ATO&linkCode=as2&tag=steveparkeror-20">http://amzn.com/B00DAI6ATO</a><br/>
90<a href="http://www.amazon.co.uk/gp/product/B00DAI6ATO/ref=as_li_ss_tl?ie=UTF8&camp=1634&creative=19450&creativeASIN=B00DAI6ATO&linkCode=as2&tag=steveparkeror-21">http://amazon.co.uk/dp/B00DAI6ATO</a><br/>
91</p>
92<div clear="both">&nbsp;</div>
93<hr />
94-->
95
96<a name="preview_shell_scripting"></a>
97<h1>Preview the "Shell Scripting" book</h1>
98<iframe type="text/html" width="336" height="550" frameborder="0" allowfullscreen style="max-width:100%" src="https://read.amazon.com/kp/card?asin=B005J58LSO&preview=inline&linkCode=kpe&ref_=cm_sw_r_kb_dp_iJ6Zwb1J2XF65&tag=steveparkeror-20" ></iframe>
99
100<a name="preview_shell_scripting_tutorial"></a>
101<h1>Preview the "Shell Scripting Tutorial"</h1>
102<iframe type="text/html" width="336" height="550" frameborder="0" allowfullscreen style="max-width:100%" src="https://read.amazon.com/kp/card?asin=B00C2EGNSA&preview=inline&linkCode=kpe&ref_=cm_sw_r_kb_dp_mM6Zwb14V1JYP&tag=steveparkeror-20" ></iframe>
103
104<a name="preview_rpm"></a>
105<h1>Preview the "How to Create an RPM" book</h1>
106<iframe type="text/html" width="336" height="550" frameborder="0" allowfullscreen style="max-width:100%" src="https://read.amazon.com/kp/card?asin=B01CBZ6SXY&preview=inline&linkCode=kpe&ref_=cm_sw_r_kb_dp_W5k4wb1VQPPK3" ></iframe>
107
108<a name="preview_lamp"></a>
109<h1>Preview the "How to Build a LAMP Server" book</h1>
110<iframe type="text/html" width="336" height="550" frameborder="0" allowfullscreen style="max-width:100%" src="https://read.amazon.com/kp/card?asin=B00DAI6ATO&preview=inline&linkCode=kpe&ref_=cm_sw_r_kb_dp_4M6Zwb1BJ3WCC&tag=steveparkeror-20" ></iframe>
111
112            
113             <DIV id="subheadTop">Publications</DIV>
114            	
115            
116            <div id="socialTop">
117            	
118           		<A href="https://twitter.com/home?status=Publications - http://steve-parker.org/publications/" target="_blank"><img src="/img/twitter.png" width="23" height="23" alt="Share on Twitter" border="0"/></A> 
119<A href="https://www.facebook.com/share.php?u=http://steve-parker.org/publications/?&t=Publications" target="_blank"><img src="/img/facebook.png" width="24" height="23" border="0" alt="Share on Facebook"/></A> 
120<A href="http://www.linkedin.com/shareArticle?mini=true&url=http://steve-parker.org/publications/&title=Publications&summary=A%20Bourne%20Shell%20Programming/Scripting%20Tutorial%20for%20learning%20about%20using%20the%20Unix%20shell.%20Learn%20Linux%20/%20Unix%20shell%20scripting%20by%20example%20along%20with%20the%20theory.%20We%27ll%20have%20you%20mastering%20Unix%20shell%20scripting%20in%20no%20time!" target="_blank"><img src="/img/linkedin.png" width="24" height="23" alt="Share on LinkedIn" border="0"/></A>
121<a rel="me" href="https://social.linux.pizza/@unixsteve"><img src="/img/mastodon.png" width="23" height="23"></a>
122
123            </div>
124            
125        </div>
126        
127        <div id="sidebar"></div>
128        
129        <div id="header">
130        	<div id="sitemenu"><ul class="menu"><li class="menuitem"><a href="/" rel="nofollow">Home</a></li><li class="menuitem hasChildMenu"><a href="/sh/sh.shtml" rel="nofollow">Tutorials, Articles and Publications</a><ul><li class="menuitem"><a href="/sh/sh.shtml" rel="nofollow">
130Shell Scripting Tutorial</a></li><li class="menuitem"><a href="/articles" rel="nofollow">Articles</a></li><li class="menuitem"><a href="/linux/" rel="nofollow">Linux Tips</a></li><li class="menuitem"><a href="/publications" rel="nofollow">My Publications</a></li></ul></li><li class="menuitem hasChildMenu"><a href="/book" rel="nofollow">Shell Scripting: Expert Recipes</a><ul><li class="menuitem"><a href="https://www.amazon.com/gp/product/1118024486/ref=as_li_tf_tl?ie=UTF8&amp;tag=steveparkeror-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1118024486" rel="nofollow">Shell Scripting On Amazon USA</a></li><li class="menuitem"><a href="https://www.amazon.co.uk/dp/1118024486/ref=as_li_tf_til?tag=steveparkeror-21&amp;camp=1406&amp;creative=6394&amp;linkCode=as1&amp;creativeASIN=1118024486&amp;adid=0W3RN3982XER7Z4GHTW1&amp;" rel="nofollow">Shell Scripting On Amazon UK</a></li><li class="menuitem"><a href="https://facebook.com/shellscript" rel="nofollow">Shell Scripting On Facebook</a></li><li class="menuitem"><a href="https://steve-parker.org/book" rel="nofollow">Shell Scripting Table of Contents</a></li><li class="menuitem"><a href="/publications" rel="nofollow">My Publications</a></li></ul></li><li class="menuitem hasChildMenu"><a href="/cv/" rel="nofollow">My CV</a><ul><li class="menuitem"><a href="/cv/" rel="nofollow">Read Online</a></li><li class="menuitem"><a href="/cv-steve-parker.doc" rel="nofollow">Download .DOC</a></li><li class="menuitem"><a href="/cv-steve-parker.pdf" rel="nofollow">Download .PDF</a></li></ul></li></ul></div>
131        </div>
132    
133    
134                 <DIV id="leftBar">
135            	
136
137<p>
138<a target='_blank' href="http://amzn.to/2mPhTlK"><center><img src='/img/shellscripting.jpg' width='159px' height='200px' alt='Shell Scripting: Expert Recipes for Linux, Bash and more'></center><br/>Shell Scripting: Expert Recipes for Linux, Bash and more</a> is my 564-page book on Shell Scripting.  The first half covers all of the features of the shell in every detail; the second half has real-world shell scripts, organised by topic, along with detailed discussion of each script.</center>
139</p>
140<p>&nbsp;</p>
141<p>&nbsp;</p>
142<p>&nbsp;</p>
143<p>&nbsp;</p>
144<p>&nbsp;</p>
145<p>
146<a target="_blank" href="http://amzn.to/2mPj2tK"><center><img src='/img/tutorial.jpg' width='125px' height='200px' alt='Shell Scripting Tutorial'></center><br/>Shell Scripting Tutorial</a> is my Shell Scripting tutorial, in 88-page Paperback and eBook formats. Convenient to read on the go, and in paperback format good to keep by your desk as an ever-present companion.</center></a><br/>
147
148
149<p>&nbsp;</p>
150<p>&nbsp;</p>
151<p>&nbsp;</p>
152<p>&nbsp;</p>
153<p>&nbsp;</p>
154
155<br/>My Shell Scripting Tutorial is also available in PDF form at Gumroad: 
156<a class="my-gumroad-button" href="https://gum.co/shellscript" target="_blank">Get my Shell Scripting Tutorial as a PDF for only $5</a>
157</p>
158
159
160
161            </DIV>
162			
163
164        
165	</div>
166    
167    
168</div>
169
170
171
172
173<div id="footer">
174
175	<div id="footercontent">
176	<!-- skip foot menu 
177    	<div id="footmenu">
178        	<--?php echo $mb->buildFooterMenu(); ?>
179        </div>
180	    <div id="socialFoot">
181			<--?php include($_SERVER['DOCUMENT_ROOT'] . '/php/socialicons.php'); ?>
182        <div/>
183		-->
184        
185        <div id="copy">
186        	All Content &copy; Steve Parker 2000 - 2026 unless otherwise indicated.
187        </div>
188        
189	</div>
190    
191</div>
192<script>
vendor: 339 bytes, lines 192-198
192
193  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
194  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
195  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
196  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
197
198  ga('create', '
198UA-270530-1
vendor: 14 bytes, lines 198-199
198', 'auto');
199  
199ga('require', 'displayfeatures');
200  ga('send', 'pageview');
201
202</script>
202
203<!-- Place this tag after the last plusone tag -->
204<script type="text/javascript">
205  window.___gcfg = {lang: 'en-GB'};
206
207  (function() {
208    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
209    po.src = 'https://apis.google.com/js/plusone.js';
210    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
211  })();
212</script>
212
213
214<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"8d7381f2841049f7bfec19d948654d2e","r":1,"spa":2}' crossorigin="anonymous"></script>
214
215</body>
216</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.