450 lines
9.9 KiB
HTML
450 lines
9.9 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||
<HTML
|
||
><HEAD
|
||
><TITLE
|
||
>Credits</TITLE
|
||
><META
|
||
NAME="GENERATOR"
|
||
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
|
||
REL="HOME"
|
||
TITLE="Advanced Bash-Scripting Guide"
|
||
HREF="index.html"><LINK
|
||
REL="UP"
|
||
TITLE="Endnotes"
|
||
HREF="endnotes.html"><LINK
|
||
REL="PREVIOUS"
|
||
TITLE="Tools Used to Produce This Book"
|
||
HREF="toolsused.html"><LINK
|
||
REL="NEXT"
|
||
TITLE="Disclaimer"
|
||
HREF="disclaimer.html"></HEAD
|
||
><BODY
|
||
CLASS="SECT1"
|
||
BGCOLOR="#FFFFFF"
|
||
TEXT="#000000"
|
||
LINK="#0000FF"
|
||
VLINK="#840084"
|
||
ALINK="#0000FF"
|
||
><DIV
|
||
CLASS="NAVHEADER"
|
||
><TABLE
|
||
SUMMARY="Header navigation table"
|
||
WIDTH="100%"
|
||
BORDER="0"
|
||
CELLPADDING="0"
|
||
CELLSPACING="0"
|
||
><TR
|
||
><TH
|
||
COLSPAN="3"
|
||
ALIGN="center"
|
||
>Advanced Bash-Scripting Guide: </TH
|
||
></TR
|
||
><TR
|
||
><TD
|
||
WIDTH="10%"
|
||
ALIGN="left"
|
||
VALIGN="bottom"
|
||
><A
|
||
HREF="toolsused.html"
|
||
ACCESSKEY="P"
|
||
>Prev</A
|
||
></TD
|
||
><TD
|
||
WIDTH="80%"
|
||
ALIGN="center"
|
||
VALIGN="bottom"
|
||
>Chapter 38. Endnotes</TD
|
||
><TD
|
||
WIDTH="10%"
|
||
ALIGN="right"
|
||
VALIGN="bottom"
|
||
><A
|
||
HREF="disclaimer.html"
|
||
ACCESSKEY="N"
|
||
>Next</A
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><HR
|
||
ALIGN="LEFT"
|
||
WIDTH="100%"></DIV
|
||
><DIV
|
||
CLASS="SECT1"
|
||
><H1
|
||
CLASS="SECT1"
|
||
><A
|
||
NAME="CREDITS"
|
||
></A
|
||
>38.5. Credits</H1
|
||
><P
|
||
><EM
|
||
>Community participation made this project
|
||
possible.</EM
|
||
> The author gratefully acknowledges that
|
||
writing this book would have been unthinkable without
|
||
help and feedback from all you people out there.</P
|
||
><P
|
||
><A
|
||
HREF="mailto:feloy@free.fr"
|
||
TARGET="_top"
|
||
>Philippe Martin</A
|
||
>
|
||
translated the first version (0.1) of this document into
|
||
DocBook/SGML. While not on the job at a small French company as a
|
||
software developer, he enjoys working on GNU/Linux documentation
|
||
and software, reading literature, playing music, and, for his
|
||
peace of mind, making merry with friends. You may run across him
|
||
somewhere in France or in the Basque Country, or you can email him
|
||
at <A
|
||
HREF="mailto:feloy@free.fr"
|
||
TARGET="_top"
|
||
>feloy@free.fr</A
|
||
>.</P
|
||
><P
|
||
>Philippe Martin also pointed out that positional parameters
|
||
past $9 are possible using {bracket} notation. (See <A
|
||
HREF="othertypesv.html#EX17"
|
||
>Example 4-5</A
|
||
>).</P
|
||
><P
|
||
><A
|
||
HREF="mailto:stephane_chazelas@yahoo.fr"
|
||
TARGET="_top"
|
||
>St<EFBFBD>phane
|
||
Chazelas</A
|
||
> sent a long list of corrections, additions,
|
||
and example scripts. More than a contributor, he had, in effect,
|
||
for a while taken on the role of <EM
|
||
>co-editor</EM
|
||
>
|
||
for this document. <I
|
||
CLASS="FOREIGNPHRASE"
|
||
>Merci
|
||
beaucoup!</I
|
||
></P
|
||
><P
|
||
>Paulo Marcel Coelho Aragao offered many corrections, both major
|
||
and minor, and contributed quite a number of helpful
|
||
suggestions.</P
|
||
><P
|
||
>I would like to especially thank <EM
|
||
>Patrick
|
||
Callahan</EM
|
||
>, <EM
|
||
>Mike Novak</EM
|
||
>, and
|
||
<EM
|
||
>Pal Domokos</EM
|
||
> for catching bugs, pointing out
|
||
ambiguities, and for suggesting clarifications and changes in the
|
||
preliminary version (0.1) of this document. Their lively
|
||
discussion of shell scripting and general documentation issues
|
||
inspired me to try to make this document more readable.</P
|
||
><P
|
||
>I'm grateful to Jim Van Zandt for pointing out errors and
|
||
omissions in version 0.2 of this document. He also contributed
|
||
an instructive <A
|
||
HREF="contributed-scripts.html#ZFIFO"
|
||
>example script</A
|
||
>.</P
|
||
><P
|
||
>Many thanks to <A
|
||
HREF="mailto:mikaku@fiwix.org"
|
||
TARGET="_top"
|
||
>Jordi Sanfeliu</A
|
||
>
|
||
for giving permission to use his fine tree script (<A
|
||
HREF="contributed-scripts.html#TREE"
|
||
>Example A-16</A
|
||
>), and to Rick Boivie for revising it.</P
|
||
><P
|
||
>Likewise, thanks to <A
|
||
HREF="mailto:charpov@cs.unh.edu"
|
||
TARGET="_top"
|
||
>Michel Charpentier</A
|
||
> for
|
||
permission to use his <A
|
||
HREF="mathc.html#DCREF"
|
||
>dc</A
|
||
> factoring script
|
||
(<A
|
||
HREF="mathc.html#FACTR"
|
||
>Example 16-52</A
|
||
>).</P
|
||
><P
|
||
>Kudos to <A
|
||
HREF="mailto:friedman@prep.ai.mit.edu"
|
||
TARGET="_top"
|
||
>Noah Friedman</A
|
||
>
|
||
for permission to use his string function script (<A
|
||
HREF="contributed-scripts.html#STRING"
|
||
>Example A-18</A
|
||
>).</P
|
||
><P
|
||
><A
|
||
HREF="mailto:emmanuel.rouat@wanadoo.fr"
|
||
TARGET="_top"
|
||
>Emmanuel
|
||
Rouat</A
|
||
> suggested corrections and additions on <A
|
||
HREF="commandsub.html#COMMANDSUBREF"
|
||
>command substitution</A
|
||
>,
|
||
<A
|
||
HREF="aliases.html#ALIASREF"
|
||
>aliases</A
|
||
>, and <A
|
||
HREF="pathmanagement.html"
|
||
>path management</A
|
||
>. He also
|
||
contributed a very nice sample <TT
|
||
CLASS="FILENAME"
|
||
>.bashrc</TT
|
||
> file
|
||
(<A
|
||
HREF="sample-bashrc.html"
|
||
>Appendix M</A
|
||
>).</P
|
||
><P
|
||
><A
|
||
HREF="mailto:heiner.steven@odn.de"
|
||
TARGET="_top"
|
||
>Heiner Steven</A
|
||
>
|
||
kindly gave permission to use his base conversion script, <A
|
||
HREF="mathc.html#BASE"
|
||
>Example 16-48</A
|
||
>. He also made a number of corrections and many
|
||
helpful suggestions. Special thanks.</P
|
||
><P
|
||
>Rick Boivie contributed the delightfully recursive
|
||
<EM
|
||
>pb.sh</EM
|
||
> script (<A
|
||
HREF="recursionsct.html#PBOOK"
|
||
>Example 36-11</A
|
||
>),
|
||
revised the <EM
|
||
>tree.sh</EM
|
||
> script (<A
|
||
HREF="contributed-scripts.html#TREE"
|
||
>Example A-16</A
|
||
>), and suggested performance improvements
|
||
for the <EM
|
||
>monthlypmt.sh</EM
|
||
> script (<A
|
||
HREF="mathc.html#MONTHLYPMT"
|
||
>Example 16-47</A
|
||
>).</P
|
||
><P
|
||
>Florian Wisser enlightened me on some of the fine points of
|
||
testing strings (see <A
|
||
HREF="comparison-ops.html#STRTEST"
|
||
>Example 7-6</A
|
||
>), and on other
|
||
matters.</P
|
||
><P
|
||
>Oleg Philon sent suggestions concerning <A
|
||
HREF="textproc.html#CUTREF"
|
||
>cut</A
|
||
> and <A
|
||
HREF="system.html#PIDOFREF"
|
||
>pidof</A
|
||
>.</P
|
||
><P
|
||
>Michael Zick extended the <A
|
||
HREF="arrays.html#EMPTYARRAY"
|
||
>empty
|
||
array</A
|
||
> example to demonstrate some surprising array
|
||
properties. He also contributed the <EM
|
||
>isspammer</EM
|
||
>
|
||
scripts (<A
|
||
HREF="communications.html#ISSPAMMER"
|
||
>Example 16-41</A
|
||
> and <A
|
||
HREF="contributed-scripts.html#ISSPAMMER2"
|
||
>Example A-28</A
|
||
>).</P
|
||
><P
|
||
>Marc-Jano Knopp sent corrections and clarifications on DOS
|
||
batch files.</P
|
||
><P
|
||
>Hyun Jin Cha found several typos in the document in the
|
||
process of doing a Korean translation. Thanks for pointing
|
||
these out.</P
|
||
><P
|
||
>Andreas Abraham sent in a long list of typographical
|
||
errors and other corrections. Special thanks!</P
|
||
><P
|
||
>Others contributing scripts, making helpful suggestions, and
|
||
pointing out errors were Gabor Kiss, Leopold Toetsch,
|
||
Peter Tillier, Marcus Berglof, Tony Richardson, Nick Drage
|
||
(script ideas!), Rich Bartell, Jess Thrysoee, Adam Lazur, Bram
|
||
Moolenaar, Baris Cicek, Greg Keraunen, Keith Matthews, Sandro
|
||
Magi, Albert Reiner, Dim Segebart, Rory Winston, Lee Bigelow,
|
||
Wayne Pollock, <SPAN
|
||
CLASS="QUOTE"
|
||
>"jipe,"</SPAN
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"bojster,"</SPAN
|
||
>
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"nyal,"</SPAN
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"Hobbit,"</SPAN
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"Ender,"</SPAN
|
||
>
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"Little Monster"</SPAN
|
||
> (Alexis), <SPAN
|
||
CLASS="QUOTE"
|
||
>"Mark,"</SPAN
|
||
>
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"Patsie,"</SPAN
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"vladz,"</SPAN
|
||
> Peggy Russell,
|
||
Emilio Conti, Ian. D. Allen, Hans-Joerg Diers, Arun Giridhar,
|
||
Dennis Leeuw, Dan Jacobson, Aurelio Marinho Jargas, Edward
|
||
Scholtz, Jean Helou, Chris Martin, Lee Maschmeyer, Bruno Haible,
|
||
Wilbert Berendsen, Sebastien Godard, Bj<42>n Eriksson, John
|
||
MacDonald, John Lange, Joshua Tschida, Troy Engel, Manfred
|
||
Schwarb, Amit Singh, Bill Gradwohl, E. Choroba, David Lombard,
|
||
Jason Parker, Steve Parker, Bruce W. Clare, William Park, Vernia
|
||
Damiano, Mihai Maties, Mark Alexander, Jeremy Impson, Ken Fuchs,
|
||
Jared Martin, Frank Wang, Sylvain Fourmanoit, Matthew Sage,
|
||
Matthew Walker, Kenny Stauffer, Filip Moritz, Andrzej Stefanski,
|
||
Daniel Albers, Jeffrey Haemer, Stefano Palmeri, Nils Radtke,
|
||
Sigurd Solaas, Serghey Rodin, Jeroen Domburg, Alfredo Pironti,
|
||
Phil Braham, Bruno de Oliveira Schneider, Stefano Falsetto,
|
||
Chris Morgan, Walter Dnes, Linc Fessenden, Michael Iatrou, Pharis
|
||
Monalo, Jesse Gough, Fabian Kreutz, Mark Norman, Harald Koenig,
|
||
Dan Stromberg, Peter Knowles, Francisco Lobo, Mariusz Gniazdowski,
|
||
Sebastian Arming, Chetankumar Phulpagare, Benno Schulenberg,
|
||
Tedman Eng, Jochen DeSmet, Juan Nicolas Ruiz, Oliver Beckstein,
|
||
Achmed Darwish, Dotan Barak, Richard Neill, Albert Siersema,
|
||
Omair Eshkenazi, Geoff Lee, Graham Ewart, JuanJo Ciarlante,
|
||
Cliff Bamford, Nathan Coulter, Ramses Rodriguez Martinez,
|
||
Evgeniy Ivanov, Craig Barnes, George Dimitriu, Kevin LeBlanc,
|
||
Antonio Macchi, Tomas Pospisek, David Wheeler, Erik Brandsberg,
|
||
YongYe, Andreas K<>hne, P<>draig Brady, Joseph
|
||
Steinhauser, and David Lawyer (himself an author of four
|
||
HOWTOs).</P
|
||
><P
|
||
>My gratitude to <A
|
||
HREF="mailto:chet@po.cwru.edu"
|
||
TARGET="_top"
|
||
>Chet
|
||
Ramey</A
|
||
> and Brian Fox for writing <I
|
||
CLASS="FIRSTTERM"
|
||
>Bash</I
|
||
>,
|
||
and building into it elegant and powerful scripting
|
||
capabilities rivaling those of <I
|
||
CLASS="FIRSTTERM"
|
||
>ksh</I
|
||
>.</P
|
||
><P
|
||
>Very special thanks to the hard-working volunteers at
|
||
the <A
|
||
HREF="http://www.tldp.org"
|
||
TARGET="_top"
|
||
>Linux Documentation
|
||
Project</A
|
||
>. The LDP hosts a repository of Linux knowledge
|
||
and lore, and has, to a great extent, enabled the publication
|
||
of this book.</P
|
||
><P
|
||
>Thanks and appreciation to IBM, Red Hat, Google, the <A
|
||
HREF="http://www.fsf.org"
|
||
TARGET="_top"
|
||
>Free Software Foundation</A
|
||
>, and
|
||
all the good people fighting the good fight to keep Open Source
|
||
software free and open.</P
|
||
><P
|
||
>Belated thanks to my fourth grade teacher, Miss Spencer,
|
||
for emotional support and for convincing me that maybe, just
|
||
maybe I wasn't a total loss.</P
|
||
><P
|
||
>Thanks most of all to my wife, Anita, for her encouragement,
|
||
inspiration, and emotional support.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="NAVFOOTER"
|
||
><HR
|
||
ALIGN="LEFT"
|
||
WIDTH="100%"><TABLE
|
||
SUMMARY="Footer navigation table"
|
||
WIDTH="100%"
|
||
BORDER="0"
|
||
CELLPADDING="0"
|
||
CELLSPACING="0"
|
||
><TR
|
||
><TD
|
||
WIDTH="33%"
|
||
ALIGN="left"
|
||
VALIGN="top"
|
||
><A
|
||
HREF="toolsused.html"
|
||
ACCESSKEY="P"
|
||
>Prev</A
|
||
></TD
|
||
><TD
|
||
WIDTH="34%"
|
||
ALIGN="center"
|
||
VALIGN="top"
|
||
><A
|
||
HREF="index.html"
|
||
ACCESSKEY="H"
|
||
>Home</A
|
||
></TD
|
||
><TD
|
||
WIDTH="33%"
|
||
ALIGN="right"
|
||
VALIGN="top"
|
||
><A
|
||
HREF="disclaimer.html"
|
||
ACCESSKEY="N"
|
||
>Next</A
|
||
></TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
WIDTH="33%"
|
||
ALIGN="left"
|
||
VALIGN="top"
|
||
>Tools Used to Produce This Book</TD
|
||
><TD
|
||
WIDTH="34%"
|
||
ALIGN="center"
|
||
VALIGN="top"
|
||
><A
|
||
HREF="endnotes.html"
|
||
ACCESSKEY="U"
|
||
>Up</A
|
||
></TD
|
||
><TD
|
||
WIDTH="33%"
|
||
ALIGN="right"
|
||
VALIGN="top"
|
||
>Disclaimer</TD
|
||
></TR
|
||
></TABLE
|
||
></DIV
|
||
></BODY
|
||
></HTML
|
||
> |