| |
| |
| |
Introduction and Background: | |
| |
| |
| |
Introduction | |
| |
| |
| |
How to use this book | |
| |
| |
| |
Installing Unix and Perl: | |
| |
| |
| |
What do I need in order to learn Unix and Perl? | |
| |
| |
| |
Installing Linux on a PC | |
| |
| |
| |
Installing a code editor | |
| |
| |
| |
Essential Unix: | |
| |
| |
| |
Introduction to Unix | |
| |
| |
| |
The Unix terminal | |
| |
| |
| |
The Unix command prompt | |
| |
| |
| |
Your first Unix command | |
| |
| |
| |
The hierarchy of a Unix file system | |
| |
| |
| |
Finding out where you are in the filesystem | |
| |
| |
| |
How to navigate a Unix filesystem | |
| |
| |
| |
Absolute and relative paths | |
| |
| |
| |
Working with your home directory | |
| |
| |
| |
The Unix shell | |
| |
| |
| |
Environment variables | |
| |
| |
| |
Introduction to command-line options | |
| |
| |
| |
Main pages | |
| |
| |
| |
Working with directories | |
| |
| |
| |
The importance of saving keystrokes | |
| |
| |
| |
Moving and renaming files | |
| |
| |
| |
Moving and renaming directories | |
| |
| |
| |
How to remove files | |
| |
| |
| |
How to copy files and directories | |
| |
| |
| |
Working with text files | |
| |
| |
| |
Introduction to aliases | |
| |
| |
| |
Editing text files | |
| |
| |
| |
Automating Unix commands | |
| |
| |
| |
How to hide files and find hidden files | |
| |
| |
| |
Creating a configuration file | |
| |
| |
| |
Programming with Unix | |
| |
| |
| |
Unix file permissions | |
| |
| |
| |
How to specify which directories contain programs | |
| |
| |
| |
Creating useful shell scripts | |
| |
| |
| |
Unix summary | |
| |
| |
| |
Essential Perl: | |
| |
| |
| |
Hello world | |
| |
| |
| |
Scalar variables | |
| |
| |
| |
Use warnings | |
| |
| |
| |
Maths and functions | |
| |
| |
| |
Perl vs perl | |
| |
| |
| |
Conditional statements | |
| |
| |
| |
Use strict | |
| |
| |
| |
Stopping programs | |
| |
| |
| |
Working with strings | |
| |
| |
| |
Dealing with special characters | |
| |
| |
| |
Matching operators | |
| |
| |
| |
The transliteration operator | |
| |
| |
| |
List context | |
| |
| |
| |
Introduction to arrays | |
| |
| |
| |
Array manipulation | |
| |
| |
| |
The @ARGV array | |
| |
| |
| |
Defined and undefined variables | |
| |
| |
| |
Sorting | |
| |
| |
| |
Introduction to loops | |
| |
| |
| |
More loops | |
| |
| |
| |
Loop control | |
| |
| |
| |
Data input and output | |
| |
| |
| |
Reading and writing files | |
| |
| |
| |
Introduction to hashes | |
| |
| |
| |
Working with hashes | |
| |
| |
| |
Introduction to regular expressions | |
| |
| |
| |
Regular expression metacharacters | |
| |
| |
| |
Working with regular expressions | |
| |
| |
| |
Interacting with other programs | |
| |
| |
| |
Using functions and subroutines | |
| |
| |
| |
Returning data from a subroutine | |
| |
| |
| |
Part IV summary | |
| |
| |
| |
Advanced Unix: | |
| |
| |
| |
Introduction to advanced Unix | |
| |
| |
| |
Introduction to process control | |
| |
| |
| |
The grep command | |
| |
| |
| |
Viewing, and controlling, program output | |
| |
| |
| |
Redirecting input and output | |
| |
| |
| |
Standard error | |
| |
| |
| |
Connecting commands with pipelines | |
| |
| |
| |
Advanced text manipulation | |
| |
| |
| |
Advanced Perl: | |
| |
| |
| |
Regular expressions revisited | |
| |
| |
| |
Function libraries | |
| |
| |
| |
References and 2-dimensional arrays | |
| |
| |
| |
Records and other hash references | |
| |
| |
| |
Using references with subroutines | |
| |
| |
| |
Complex data structures | |
| |
| |
| |
Adding command-line options | |
| |
| |
| |
OOP basics | |
| |
| |
| |
CPAN | |
| |
| |
| |
Programming Topics: | |
| |
| |
| |
Debugging strategies | |
| |
| |
| |
Common error messages | |
| |
| |
| |
Code beautification | |
| |
| |
| |
Abstraction | |
| |
| |
| |
Data management | |
| |
| |
| |
Documentation | |
| |
| |
| |
Revision control | |
| |
| |
| |
Working with other peoples' data | |
| |
| |
| |
Getting help | |
| |
| |
Appendix | |
| |
| |
Index | |