• Complain

Cameron Newham - Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))

Here you can read online Cameron Newham - Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly)) full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2005, publisher: OReilly Media, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

No cover
  • Book:
    Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))
  • Author:
  • Publisher:
    OReilly Media
  • Genre:
  • Year:
    2005
  • Rating:
    4 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly)): summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

OReillys bestselling book on Linuxs bash shell is at it again. Now that Linux is an established player both as a server and on the desktop Learning the bash Shell has been updated and refreshed to account for all the latest changes. Indeed, this third edition serves as the most valuable guide yet to the bash shell.As any good programmer knows, the first thing users of the Linux operating system come face to face with is the shell the UNIX term for a user interface to the system. In other words, its what lets you communicate with the computer via the keyboard and display. Mastering the bash shell might sound fairly simple but it isnt. In truth, there are many complexities that need careful explanation, which is just what Learning the bash Shell provides.If you are new to shell programming, the book provides an excellent introduction, covering everything from the most basic to the most advanced features. And if youve been writing shell scripts for years, it offers a great way to find out what the new shell offers. Learning the bash Shell is also full of practical examples of shell commands and programs that will make everyday use of Linux that much easier. With this book, programmers will learn:How to install bash as your login shell The basics of interactive shell use, including UNIX file and directory structures, standard I/O, and background jobs Command line editing, history substitution, and key bindingsHow to customize your shell environment without programmingThe nuts and bolts of basic shell programming, flow control structures, command-line options and typed variablesProcess handling, from job control to processes, coroutines and subshellsDebugging techniques, such as trace and verbose modesTechniques for implementing system-wide shell customization and features related to system security

Cameron Newham: author's other books


Who wrote Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))? Find out the surname, the name of the author of the book and a list of all author's works by series.

Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly)) — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Learning the bash Shell, 3rd Edition
Cameron Newham
Editor
Mike Loukides

Copyright 2009 O'Reilly Media, Inc.

OReilly Media Preface The first thing users of the UNIX or Linux operating - photo 1

O'Reilly Media

Preface

The first thing users of the UNIX or Linux operating systems come face to face with is the shell . "Shell" is the UNIX term for a user interface to the systemsomething that lets you communicate with the computer via the keyboard and the display. Shells are just separate programs that encapsulate the system, and, as such, there are many to choose from.

Systems are usually set up with a "standard" shell that new users adopt without question. However, some of these standard shells are rather old and lack many features of the newer shells. This is a shame, because shells have a large bearing on your working environment. Since changing shells is as easy as changing hats, there is no reason not to change to the latest and greatest in shell technology.

Of the many shells to choose from, this book introduces the Bourne Again shell ( bash for short), a modern general-purpose shell. Other useful modern shells are the Korn shell ( ksh ) and the "Tenex C shell" ( tcsh ); both are also the subjects of O'Reilly handbooks.

bash Versions

shows you how to go about it.



[] Throughout this book we have clearly marked with footnotes the features that are not present in the earlier versions.

Summary of bash Features

bash is a backward-compatible evolutionary successor to the Bourne shell that includes most of the C shell's major advantages as well as features from the Korn shell and a few new features of its own. Features appropriated from the C shell include:

  • Directory manipulation, with the pushd , popd , and dirs commands.

  • Job control, including the fg and bg commands and the ability to stop jobs with CTRL-Z.

  • Brace expansion, for generating arbitrary strings.

  • Tilde expansion, a shorthand way to refer to directories.

  • Aliases, which allow you to define shorthand names for commands or command lines.

  • Command history, which lets you recall previously entered commands.

bash 's major new features include:

  • Command-line editing, allowing you to use vi - or emacs -style editing commands on your command lines.

  • Key bindings that allow you to set up customized editing key sequences.

  • Integrated programming features: the functionality of several external UNIX commands, including test , expr , getopt , and echo , has been integrated into the shell itself, enabling common programming tasks to be done more cleanly and efficiently.

  • Control structures, especially the select construct, which enables easy menu generation.

  • New options and variables that give you more ways to customize your environment.

  • One dimensional arrays that allow easy referencing and manipulation of lists of data.

  • Dynamic loading of built-ins, plus the ability to write your own and load them into the running shell.

Intended Audience

This book is designed to address casual UNIX and Linux users who are just above the "raw beginner" level. You should be familiar with the process of logging in, entering commands, and doing simple things with files. Although reviews concepts such as the tree-like file and directory scheme, you may find that it moves too quickly if you're a complete neophyte. In that case, we recommend the O'Reilly handbook, Learning the UNIX Operating System , by Jerry Peek, Grace Todino, and John Strang.

If you're an experienced user, you may wish to skip reveals a few subtle differences between the bash and C shells.

No matter what your level of experience is, you will undoubtedly learn many things in this book that will make you a more productive bash userfrom major features down to details at the "nook-and-cranny" level that you may not have been aware of.

If you are interested in shell programming (writing shell scripts and functions that automate everyday tasks or serve as system utilities), you should also find this book useful. However, we have deliberately avoided drawing a strong distinction between interactive shell use (entering commands during a login session) and shell programming. We see shell programming as a natural, inevitable outgrowth of increasing experience as a user.

Accordingly, each chapter depends on those previous to it, and although the first three chapters are oriented toward interactive use only, subsequent chapters describe interactive, user-oriented features in addition to programming concepts.

This book aims to show you that writing useful shell programs doesn't require a computing degree. Even if you are completely new to computing, there is no reason why you shouldn't be able to harness the power of bash within a short time.

Toward that end, we decided not to spend too much time on features of exclusive interest to low-level systems programmers. Concepts like file descriptors and special file types might only confuse the casual user, and anyway, we figure those of you who understand such things are smart enough to extrapolate the necessary information from our cursory discussions.

Code Examples

and onwards, we include various programming problems, which we call tasks , that illustrate particular shell programming concepts. Some tasks have solutions that are refined in subsequent chapters. The later chapters also include programming exercises, many of which build on the tasks in the chapter.

Feel free to use any code you see in this book and to pass it along to friends and colleagues. We especially encourage you to modify and enhance it yourself.

If you want to try examples but you don't use bash as your login shell, you must put the following line at the top of each shell script:

#!/bin/bash

If bash isn't installed as the file /bin/bash , substitute its pathname in the above.

Chapter Summary

If you want to investigate specific topics rather than read the entire book through, here is a chapter-by-chapter summary:

introduces bash and tells you how to install it as your login shell. Then it surveys the basics of interactive shell use, including overviews of the UNIX file and directory scheme, standard I/O, and background jobs.

discusses the shell's command history mechanism (including the emacs - and vi -editing modes), history substitution and the fc history command, and key bindings with readline and bind .

covers ways to customize your shell environment without programming by using the startup and environment files. Aliases, options, and shell variables are the customization techniques discussed.

is an introduction to shell programming. It explains the basics of shell scripts and functions, and discusses several important "nuts-and-bolts" programming features: string manipulation operators, brace expansion, command-line arguments (positional parameters), and command substitution.

continues the discussion of shell programming by describing command exit status, conditional expressions, and the shell's flow-control structures:

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))»

Look at similar books to Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly)). We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))»

Discussion, reviews of the book Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly)) and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.