
Desertcart purchases this item on your behalf and handles shipping, customs, and support to Tanzania.
Shell scripting skills never go out of style. It's the shell that unlocks the real potential of Unix. Shell scripting is essential for Unix users and system administrators-a way to quickly harness and customize the full power of any Unix system. With shell scripts, you can combine the fundamental Unix text and file processing commands to crunch data and automate repetitive tasks. But beneath this simple promise lies a treacherous ocean of variations in Unix commands and standards. Classic Shell Scripting is written to help you reliably navigate these tricky waters. Writing shell scripts requires more than just a knowledge of the shell language, it also requires familiarity with the individual Unix programs: why each one is there, how to use them by themselves, and in combination with the other programs. The authors are intimately familiar with the tips and tricks that can be used to create excellent scripts, as well as the traps that can make your best effort a bad shell script. With Classic Shell Scripting you'll avoid hours of wasted effort. You'll learn not only write useful shell scripts, but how to do it properly and portably. The ability to program and customize the shell quickly, reliably, and portably to get the best out of any individual system is an important skill for anyone operating and maintaining Unix or Linux systems. Classic Shell Scripting gives you everything you need to master these essential skills. Review: A solid book on portable shell scripting - "Classic Shell Scripting" by Arnold Robbins and Nelson H. F. Beebe is a decent text on portable shell scripting, which also contains a fair amount of awk. Though written in tutorial form, it explicitly assumes that the reader knows how to use the shell interactively and, as I show below, in some cases implicitly assumes that the reader already knows the basics of shell scripting. The Good: Robbins and Beebe have created a pedagogically sound book which contains tables, fascinating digressions, sidebars (with major options on tools, along with caveats), an annotated bibliography, as well as a glossary. The book can be read straight through, since each chapter builds on the preceding ones, but the aforementioned resources are especially handy when using this book as a reference. Were it not for the tables and sidebars it would be difficult to look up things like how to set the field separator in different tools (-t in sort, -d in cut, -F in awk) or how to ensure case-insensitivity (-i in grep, -f in sort). The topics the authors cover throughout the book are interesting, but the real meat is in chapters 3, 6, 7, 9, 10, which discuss regular expressions, sed, awk (Robbins is the maintainer of gawk and also the co-author/author of books on awk), control flow, command evaluation, and file manipulation. Most of the other chapters are applications of the topics introduced up to that point, and serve to drive home the lessons already learned (though there are pleasant exceptions to this pattern, e.g. the section on crontab in ch. 13, or the material on the Unix filesystem in Appendix B). The writing is generally relaxed and at times borderline silly, e.g. "exit 42 #Return the answer to the ultimate question" or "root) nasty stuff here #Danger Will Robinson, danger!". Importantly, the entire book is focused on scripting that is compatible with the POSIX standard(s) (e.g., the authors prefer printf to echo) -- it is similar in that sense to Peter Seebach's book on portable shell scripting from Apress. Apart from the pointers on the behavior of different shells scattered throughout the volume, the authors have also devoted ch. 14 to portability gotchas and shell-language extensions. The Bad: despite the tutorial nature of this text, it does have a few pedagogical flaws. These include the use of concepts before they are introduced (e.g. here-documents are used in ch. 4 but are mentioned by name only in ch. 5; the ${varname:-word} operator is used in ch. 5 but is not defined until ch. 6; the authors use >&2 three times in ch. 6 before pointing out that they will explain it in ch. 7). Such minor slip-ups extend to the use of concepts that are just not explained anywhere in the book (e.g. in ch. 3 the d command in sed, or in ch. 5 the -c option in grep). In yet other cases, the authors simply do not practice what they preach (e.g. in ch. 7 they recommend $() for command substitution, but then use `` in all but one of the examples in chapter 8, titled "Production Scripts"). On a different note, using this volume as a reference is not as easy as it should be. Tracking down an explanation months after you've finished reading the book can be frustrating, as I will illustrate with a specific example: the index entry for globbing says "see pathname expansion"; going to the index entry for pathname expansion we are pointed only to p. 496 (the glossary entry for that term), but not to any sections in any of the chapters. In the glossary entry on p. 496 we are told that globbing a.k.a. pathname expansion is also called wildcarding. Heading back to the index, no entry for wildcarding is to be found; there's an entry for wildcard expansion, instead, which looks relevant. Unfortunately, that entry not only points to irrelevant sections, but also ends with the inimitable "see also pathname expansion". All the while, subsection 7.5.2 is titled "Wildcarding", but you wouldn't get there simply by using the index. Sadly, the table of contents is similarly unhelpful in this context, since it includes sections, but not subsections. This book could be shorter, but it's still worth reading. I especially enjoyed the sections on regular expressions and on awk. As already explained, readers who know nothing about shell scripting may find this a difficult read, so they might want to first go over "Learning the bash shell" by Newham & Rosenblatt or a similar volume. Finally, access to an ebook version can make up for the deficiencies of the index when using Robbins' & Beebe's text as a reference. All in all, 4.5 stars. Alex Gezerlis Review: Good book - It's a reference manual for for those who are beginning or intermediate sysadmin or work with bourne shell. Clear and easy to follow.

| Best Sellers Rank | #1,031,562 in Books ( See Top 100 in Books ) #26 in Unix Shell #397 in Computer Operating Systems (Books) #443 in Linux Operating System |
| Customer Reviews | 4.6 out of 5 stars 221 Reviews |
A**G
A solid book on portable shell scripting
"Classic Shell Scripting" by Arnold Robbins and Nelson H. F. Beebe is a decent text on portable shell scripting, which also contains a fair amount of awk. Though written in tutorial form, it explicitly assumes that the reader knows how to use the shell interactively and, as I show below, in some cases implicitly assumes that the reader already knows the basics of shell scripting. The Good: Robbins and Beebe have created a pedagogically sound book which contains tables, fascinating digressions, sidebars (with major options on tools, along with caveats), an annotated bibliography, as well as a glossary. The book can be read straight through, since each chapter builds on the preceding ones, but the aforementioned resources are especially handy when using this book as a reference. Were it not for the tables and sidebars it would be difficult to look up things like how to set the field separator in different tools (-t in sort, -d in cut, -F in awk) or how to ensure case-insensitivity (-i in grep, -f in sort). The topics the authors cover throughout the book are interesting, but the real meat is in chapters 3, 6, 7, 9, 10, which discuss regular expressions, sed, awk (Robbins is the maintainer of gawk and also the co-author/author of books on awk), control flow, command evaluation, and file manipulation. Most of the other chapters are applications of the topics introduced up to that point, and serve to drive home the lessons already learned (though there are pleasant exceptions to this pattern, e.g. the section on crontab in ch. 13, or the material on the Unix filesystem in Appendix B). The writing is generally relaxed and at times borderline silly, e.g. "exit 42 #Return the answer to the ultimate question" or "root) nasty stuff here #Danger Will Robinson, danger!". Importantly, the entire book is focused on scripting that is compatible with the POSIX standard(s) (e.g., the authors prefer printf to echo) -- it is similar in that sense to Peter Seebach's book on portable shell scripting from Apress. Apart from the pointers on the behavior of different shells scattered throughout the volume, the authors have also devoted ch. 14 to portability gotchas and shell-language extensions. The Bad: despite the tutorial nature of this text, it does have a few pedagogical flaws. These include the use of concepts before they are introduced (e.g. here-documents are used in ch. 4 but are mentioned by name only in ch. 5; the ${varname:-word} operator is used in ch. 5 but is not defined until ch. 6; the authors use >&2 three times in ch. 6 before pointing out that they will explain it in ch. 7). Such minor slip-ups extend to the use of concepts that are just not explained anywhere in the book (e.g. in ch. 3 the d command in sed, or in ch. 5 the -c option in grep). In yet other cases, the authors simply do not practice what they preach (e.g. in ch. 7 they recommend $() for command substitution, but then use `` in all but one of the examples in chapter 8, titled "Production Scripts"). On a different note, using this volume as a reference is not as easy as it should be. Tracking down an explanation months after you've finished reading the book can be frustrating, as I will illustrate with a specific example: the index entry for globbing says "see pathname expansion"; going to the index entry for pathname expansion we are pointed only to p. 496 (the glossary entry for that term), but not to any sections in any of the chapters. In the glossary entry on p. 496 we are told that globbing a.k.a. pathname expansion is also called wildcarding. Heading back to the index, no entry for wildcarding is to be found; there's an entry for wildcard expansion, instead, which looks relevant. Unfortunately, that entry not only points to irrelevant sections, but also ends with the inimitable "see also pathname expansion". All the while, subsection 7.5.2 is titled "Wildcarding", but you wouldn't get there simply by using the index. Sadly, the table of contents is similarly unhelpful in this context, since it includes sections, but not subsections. This book could be shorter, but it's still worth reading. I especially enjoyed the sections on regular expressions and on awk. As already explained, readers who know nothing about shell scripting may find this a difficult read, so they might want to first go over "Learning the bash shell" by Newham & Rosenblatt or a similar volume. Finally, access to an ebook version can make up for the deficiencies of the index when using Robbins' & Beebe's text as a reference. All in all, 4.5 stars. Alex Gezerlis
A**O
Good book
It's a reference manual for for those who are beginning or intermediate sysadmin or work with bourne shell. Clear and easy to follow.
J**L
Decrypting the mystery of shell scripting is what this book does.
Until the past two years, my shell scripting was limited and basic without even knowing you can write "functions" in a shell script. Like how could you do that? This book was concise an to the point and with my basic knowledge of understanding Unix is like "lego" (each command can take input and give output which can be connected another command) then the lightbulb went off and then shell scripting became not so "cryptic" and mysterious. Just follow the syntax....to the LETTER and you can write powerful scripts. I do agree that heavy testing should be done using "echo" or "printf" before running commands to "move/rename" or worse "delete/remove". Korn Shell is the popular one and now I find myself even more comfortable and confident in writing shell scripts with heavy error trapping and being elegant in exiting properly. Excellent book and now I'm on to reading the O'Reilly book "Learing the Korn Shell" by Bill Rosenblatt
M**S
After 17 Years I Still Learned Some Shell
I've been writing Korn Shell for over 17 years and I figured this book would offer me nothing more, but I was wrong. Just the two pages of notes I took from my first read made it well worth the money. Full of examples that are easy to follow, this book can take your scripts in new directions. I wish there was more detail on using functions to return Boolean values, but that's about the only complaint I can muster and that's if I'm being really picky. This is by far one of my favorite books on the subject. These guys get "it" and they can help the reader get "it" too. I highly recommend this book to all UNIX/Linux scripters, regardless of the shell they use.
F**Z
An embedded developer point of view
Who does "classic shell scripting" nowadays? Maybe some IT geek, hackers, linux distribution developers... and embedded engineers! If you develop embedded system based on linux, you will have to do with sh scripts & friends. You can do a lot of things with a good script, better than writing your-own-cross-compiled-c-code. This book can help you in going deep and use the power you have immediately available even on the smallest linux busybox installation. I liked it, I enjoyed reading it, and it helped (and helps) me in my work. I found the awk chapter a bit less good, but this is not a book on awk.
A**R
Great shell scripting book - examples galore!
For me, this is an excellent book! I've written a few shell scripts over the last several years, but I always had to look up the syntax, and never really got into the flow of it. While reading this book, I started coding some of the examples and it just clicked! I'm now writing a lot of little (and not so little; 1200 lines of bash scripts so far) shell scripts. There were always several little nuances that always bugged me, but the examples helped me remember how to do what. And there are a lot of examples of not only bash (and sh, ksh) but sed, awk, and others that help you along. Worth keeping on your bookshelf. I'd buy it again in a second.
K**M
Excellent book, highly recommended
I am a shell programmer by trade and this is my favorite shell programming book of all. It's well written, but more importantly the examples are excellent. This book was written by someone who obviously knows what he's doing. Robbins covers the areas that expose the real power of shell programming, like positional parameters in variables, regular expression syntax, etc., without being overwhelming. It's just a great programming book. How much do I like Shell Scripting? Well, I've hard the printed copy for years, but I recently bought the electronic copy as well so I'd have it on my Kindle.
R**G
A bit dry and non-interactive
It would be great if there were problems to solve for the reader, programs to modify. As it is, it is page after page of explanation, and programs that the author himself has written. It is unclear at what stage a beginner should start entering and modifying the programs.
P**;
素晴らしすぎる内容だったのか、すぐ盗難にあいました(星の数は予想??);
内容に目を通すまもなく‥すぐ盗難にあってしまいました。 ‥そういったわけで、内容はわからないのですが‥きっと素晴らしすぎる内容で、(宗教団体経由で??)韓国あたりに、送られていったのかもしれません。 ‥二千円台で、購入したのに‥購入しなおそうかと思ったのですが‥価格が二倍近くに上がっていたようでした。
T**E
Great book for beginners!
Great book for beginners!
V**O
Un excelente libro
Me ha gustado mucho el libro porque desde el inicio da un breve review de algunos conceptos muy interesantes para que se entre en contexto a la par respecto al tema. También tiene muy bueno ejemplos y conforme se va avanzando te das cuenta de que has aprendido muchas cosas interesentates Muy recomendable, también no importa que vayas comenzando con shell scripting, todo está muy bien explicado
S**J
TOP
Sehr umfangreich
B**G
Clear and practical explanations
Very good book: good explanations with practical examples. I used it to start scripts (professional and personal use). It already saved me a lot of development time for repetitive calculations on a computing grid. I would suggest it not only for system administrators, but also for scientists and engineers who have to make elaborated calculations such as the study of multiple parameters with the core tools of Unix. This is portable to Windows with MinGW, which is another reason to use those tools: portable methods. Thanks to this, I can make portable tools and distribute tasks to colleagues who are not experts in computing.
Trustpilot
1 month ago
2 days ago