Introduction to the Bash shell on Linux and
Mac OS
Introducing Bash
Reindert-Jan Ekker
@rjekker
http://www.linkedin.com/in/rjekker
Overview
Why bash?
What to expect from this course
UNIX, Linux and Mac OS
The UNIX philosophy
Why bash?
Bash is a command line shell
Gives you access to many UNIX utilities
Efficiently run complex tasks
And make them repeatable
Some use cases
File management
Processing data
System administration
Remote access
Scripting
Dominant shell on UNIX
Default on Mac OS and Linux
Available on other UNIXes, Windows, Android, etc.
What to expect
Core features and commands
Modules:
First Steps
Basic File Management
Using Bash More Effectively
Filtering and Processing Text
Jobs and Processes
Customization
Not in this course:
System administration
Scripting
UNIX, Linux, Mac OS
UNIX
Open Group: Single UNIX Specification
IBM AIX, Solaris, HP/UX, Mac OS
GNU/Linux
Linux kernel, GNU tools
Considered “UNIX-like”
BSD:
OpenBSD, FreeBSD, NetBSD, Mac OS
BSD kernel, BSD Tools
Bash is the default shell on Mac OS and Linux
But tools and utilities differ
Example: GNU cp vs BSD cp
I will focus on common features
When I mention UNIX:
I mean all of these systems in general
The UNIX philosophy
Write programs that do one thing and do it well
Write programs to work together.
Write programs to handle text streams
because that is a universal interface.