You''ll work with Brew (HomeBrew), which gives you the ability to install applications from Linux (and Unix) that can make the terminal more useful. This is important, because a lot of applications have been stripped out of macOS or deprecated. For example, Apple''s built-in PHP is usually a major release behind. You''ll also customize your terminal to change everything about it, making it your own. The whole world is about personalizing. Why put up with the Apple defaults?
Once you have your terminal set up and ready to rock, you''ll review the
Table of ContentsChapter 1: System Setup and Requirements
· Introduction
· Requirements
· Installing XCode
· Resources
Chapter 2: Basics of the Terminal
· Where is the terminal
· What is the terminal
· Built-in manual
· Text editor
· What is a shell?
· Moving around
· The filesystem
o Pwd
o Cd
· Permissions
Chapter 3: Customizing Your Terminal
· Customising the look (background/foreground colour)
· Aliases
· Paths
· Ln – Aliases / shortcuts
· Prompt
Chapter 4: Built in Commands Provided by macOS
· Lsof – Eject a drive with an open file
· Which – where is your command?
· Open
· Say
· Sysctl for system state
· Compression – gz, zip
· Finding content in files
· Find a file name
· Search and replace - Sed
· Spot the difference in text files – Diff
· Copy and paste
· Built-in Psychotherapist (emacs)
· Downloading files
· Scheduling with launchd
· Running processes
· Sudo
· Pretending website is somewhere else
· Remote shell
Chapter 5: Brew
· What brew is
· Why use brew
· Installing brew
· Finding applications in brew
· Installing applications from brew
· Brew maintenance
· When things go wrong
Chapter 6: Extra Applications
· Tmux
· Cowsay
· Figlet
· Lolcat
· Archey
· Linux utilities missing from macOS
· head, tail
· formatting xml, json files
· grep
Chapter 7: Services
· Using terminal to access content
· Weather
· Star Wars
Chapter 8: Oh My Zsh
· What is oh My Zsh
· Installation
· Themes
· Plugins
Chapter 9: Programming Languages
· Bash
· PHP
· Python
· Build a few simple terminal games in different languages
Chapter 10: Web Development
· Why
· Nginx
· MySQL
· WordPress
· Putting it live
Chapter 11: Version Control
· What is version control
· Getting started
· Using other repository
· Publishing your repository
· Using application
Chapter 12: Going Further
· Replace terminal with iTerm2
· Ideas for customising the terminal
· Programming Languages