售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Title Page
Copyright and Credits
Learn Linux Shell Scripting – Fundamentals of Bash 4.4
About Packt
Why subscribe?
PacktPub.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Disclaimer
Introduction
What is Linux?
What is Bash?
Summary
Setting Up Your Local Environment
Technical requirements
Choosing between a virtual machine and a physical installation
Setting up VirtualBox
Creating an Ubuntu virtual machine
Creating the virtual machine in VirtualBox
Installing Ubuntu on the virtual machine
Accessing the virtual machine via SSH
Summary
Questions
Further reading
Choosing the Right Tools
Technical requirements
Using graphical editors for shell scripting
Atom
Atom installation and configuration
Notepad++
Using command-line editors
Vim
Vim summary
.vimrc
Vim cheat sheet
nano
Combining graphical editors with command-line editors when writing shell scripts
Summary
Questions
Further reading
The Linux Filesystem
Technical requirements
The Linux filesystem explained
What is a filesystem?
What makes the Linux filesystem unique?
Structure of the Linux filesystem
Tree structure
Overview of top-level directories
What about multiple partitions?
/bin/, /sbin/, and /usr/
/etc/
/opt/, /tmp/, and /var/
Everything is a file
Different types of files
Summary
Questions
Further reading
Understanding the Linux Permissions Scheme
Technical requirements
Read, write, and execute
RWX
Users, groups, and others
Manipulating file permissions and ownership
chmod, umask
sudo, chown, and chgrp
sudo
chown, chgrp
Working with multiple users
Advanced permissions
File attributes
Special file permissions
Access Control Lists (ACLs)
Summary
Questions
Further reading
File Manipulation
Technical requirements
Common file operations
Copying
Removing
Renaming, moving, and linking
Archiving
Finding files
locate
find
Summary
Questions
Further reading
Hello World!
Technical requirements
First steps
The shebang
Running scripts
Readability
Comments
Script header
Verbosity
Verbosity in comments
Verbosity of commands
Verbosity of command output
Keep It Simple, Stupid (KISS)
Summary
Questions
Further reading
Variables and User Input
Technical requirements
What is a variable?
Why do we need variables?
Variables or constants?
Variable naming
Dealing with user input
Basic input
Parameters and arguments
Interactive versus non-interactive scripts
Combining positional arguments and read
Summary
Questions
Further reading
Error Checking and Handling
Technical requirements
Error checking
Exit status
Functional checks
Test shorthand
Variable refresher
Bash debugging
Error handling
if-then-exit
if-then-else
Shorthand syntax
Error prevention
Checking arguments
Managing absolute and relative paths
Dealing with y/n
Summary
Questions
Further reading
Regular Expressions
Technical requirements
Introducing regular expressions
What is a regular expression?
grep
Greediness
Character matching
Line anchors
Character classes
Globbing
What is globbing?
Similarities with regular expressions
More globbing
Advanced globbing
Disabling globbing, and other options
Using regular expressions with egrep and sed
Advanced grep
Introducing egrep
sed, the stream editor
Stream editing
In-place editing
Line manipulation
Final remarks
Summary
Questions
Further reading
Conditional Testing and Scripting Loops
Technical requirements
Advanced if-then-else
A recap on if-then-else
Using regular expressions in tests
The elif condition
Nesting
Getting help
The while loop
The until loop
Creating an interactive while loop
The for loop
Globbing and the for loop
Loop control
Breaking the loop
The continue keyword
Loop control and nesting
Summary
Questions
Further reading
Using Pipes and Redirection in Scripts
Technical requirements
Input/output redirection
File descriptors
Redirecting output
stdout
stderr
Redirect all output
Special output redirection
/dev/null
/dev/zero
Input redirection
Generating a password
Advanced redirecting
Redirecting redirections
Command substitution
Process substitution
Pipes
Binding stdout to stdin
Practical examples
Yet another password generator
Setting passwords in a script
tee
Here documents
Heredocs and variables
Using heredocs for script input
Here strings
Summary
Questions
Further reading
Functions
Technical requirements
Functions explained
Hello world!
More complexity
Variable scopes
Practical examples
Error handling
Augmenting functions with parameters
Colorful
Returning values
Function libraries
Source
More practical examples
Current working directory
Type checking
Yes-no check
Summary
Questions
Further reading
Scheduling and Logging
Technical requirements
Scheduling with at and cron
at
Time syntax
The at queue
at output
cron
crontab
Syntax for the crontab
Logging script results
Crontab environment variables
PATH
SHELL
MAILTO
Logging with redirection
Final logging considerations
A note on verbosity
Summary
Questions
Further reading
Parsing Bash Script Arguments with getopts
Technical requirements
Positional parameters versus flags
Using flags on the command line
The getopts shell builtin
The getopts syntax
Multiple flags
Flags with arguments
Combining flags with positional arguments
Summary
Questions
Further reading
Bash Parameter Substitution and Expansion
Technical requirements
Parameter expansion
Parameter substitutions – recap
Default values
Input checking
Parameter length
Variable manipulation
Pattern substitution
Pattern removal
Case modification
Substring expansion
Summary
Questions
Further reading
Tips and Tricks with Cheat Sheet
Technical requirements
General tips and tricks
Arrays
The history command
Creating your own aliases
Command-line shortcuts
Fun with exclamation marks
Running commands from the history
Keyboard shortcuts
Copying and pasting from the terminal
Reverse search
Cheat sheet for interactive commands
Navigation
cd
ls
pwd
File manipulation
cat
less
touch
mkdir
cp
rm
mv
ln
head
tail
Permissions and ownership
chmod
umask
chown
chgrp
sudo
su
useradd
groupadd
usermod
Summary
Final words
Assessments
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8
Chapter 9
Chapter 10
Chapter 11
Chapter 12
Chapter 13
Chapter 14
Chapter 15
Chapter 16
Other Books You May Enjoy
Leave a review - let other readers know what you think
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜