1 |
Wed, Jan 23 |
01 – Introduction
- Welcome to Unix Tools and Scripting!
Dark Slides
Light Slides
|
|
Fri, Jan 25 |
02 – SSH
- Set up SSH so that my server survives longer!
Dark Slides
Light Slides
Command Index
|
|
Fri, Jan 25 |
02 – Navigating the Unix File System
- Synopsis of how the Unix Filesystem is setup, what’s where, and how to get around.
- Core navigational commands: cd, ls, and pwd.
- How to alter command behavior (flags), and how to get more information (man).
Dark Slides
Light Slides
Command Index
|
2 |
Mon, Jan 28 |
03 – More on Commands
- Giving a better understanding of commands, flags, and arguments.
- How to alter command behavior (flags), and how to get more information (man).
Dark Slides
Light Slides
Command Index
|
|
Mon, Jan 28 |
03 – UNIX Permissions and find
- How to share (and not share) your files in a multi-user environment
- Unix file permissions in depth.
- Tools to view (ls, stat) and change permissions (chmod, chgrp, chown).
- How to find files and folders
Dark Slides
Light Slides
Command Index
|
|
Wed, Jan 30 |
04 – The bonus shebang
- More than you ever wanted to know about the shebang
Dark Slides
Light Slides
Command Index
|
|
Wed, Jan 30 |
04 – The Find command, editing, and scripting
- the second-most-useful command in the entire course: find
- take your side in the emacs vs vim eternal conflict
- write a simple script!
Dark Slides
Light Slides
Command Index
|
|
Fri, Feb 01 |
05 – Archiving
- Various options for compressing files using zip, gzip, tar, and friends.
Dark Slides
Light Slides
Command Index
|
|
Fri, Feb 01 |
05 – Git, Chaining, Piping & Redirection
- A gentle-ish introduction to git
- Assorted stream-based commands: wc, sort, uniq, and tr.
- The information superhighway: building pipelines and redirection.
Dark Slides
Light Slides
Command Index
|
3 |
Mon, Feb 04 |
06 – Wildcards, loops, and variables
- Environment variables and local variables
- chaining commands
- loops (for and while)
- wildcards and a wee bit of regex
- Backticks and subshells
Dark Slides
Light Slides
Command Index
|
|
Wed, Feb 06 |
07 – Extra commands and details
- Environment variables and local variables
- chaining commands
- loops (for and while)
- wildcards and a wee bit of regex
- Backticks and subshells
Dark Slides
Light Slides
Command Index
|
|
Wed, Feb 06 |
07 – Your shell, jobs, and proc
- Processes
- htop and top
- Job control
- the /proc filesystem
- dotfiles and login shells
Dark Slides
Light Slides
Command Index
|
|
Fri, Feb 08 |
08 – Your shell and working remotely
- Customizing your Shell
- Tmux
- Remote Git
- SCP
Dark Slides
Light Slides
Command Index
|
4 |
Mon, Feb 11 |
09 – Expansions and Regular Expressions
- How shell expansions work, and how to use them in practice.
- What regular expressions are and how they relate to / differ from shell expansions.
- the most useful command in the entire course: grep.
- cut, paste, and stream operations
Dark Slides
Light Slides
Command Index
|
|
Wed, Feb 13 |
10 – Sed, cut, and paste
- Cutting, pasting, splitting, and joining files
- Using regular expressions in sed
- xargs and shift for argument processing
Dark Slides
Light Slides
Command Index
|
|
Fri, Feb 15 |
11 – Advanced Bash Scripting
- The case statement in bash.
- Comparison of if and case in action.
- Fancy matching with sets and extended regular expressions.
- The splendid world of bash arrays.
Dark Slides
Light Slides
Command Index
|
5 |
Mon, Feb 18 |
12 – Awk / Gawk
- Crash course on the awk programming language.
Dark Slides
Light Slides
Command Index
|
|
Wed, Feb 20 |
13 – Networking
- Learn the basics of networking and network tools
Dark Slides
Light Slides
Command Index
|
|
Fri, Feb 22 |
14 – Docker
- Learn about virtualization, containers, and VMs.
- Talk about a specific tool known as Docker.
Dark Slides
Light Slides
Command Index
|
5 |
Mon, Feb 25 |
February Break – No Class
|
6 |
Wed, Feb 27 |
15 – Networking and Package Management
- Protocols and TCP, what joy
- Firewalls and ports and stuff
- Sometimes I forget people read the abstract.
Dark Slides
Light Slides
Command Index
|
|
Fri, Mar 01 |
16 – Networking, OS, and virtualization
- Learn about firewalls, abstractly
- Learn about how processes run on your machine
- see how VMs/containers work in principle
Dark Slides
Light Slides
Command Index
|
|
Mon, Mar 04 |
17 – Package Management, for real this time
- see how to install stuff on linux
Dark Slides
Light Slides
Command Index
|
|
Wed, Mar 06 |
18 – More Package Management, and some distros
- see how to install stuff on MacOS
- Learn about language-specific package management
- See a linux distro or two in action
Dark Slides
Light Slides
Command Index
|
|
Fri, Mar 08 |
19 – Final thoughts
- a quick detour: package management for windows
- Linux Everywhere: integrating your shell with your life
- Where to go from here.
Dark Slides
Light Slides
|