Basics of Command Line in Terminal.app
The command line is a powerful tool which can shorten and simplify many tasks.
However, the command line requires some investment in learning. This page covers a few very basic ideas in using the command line.
- Lines preceeded with '#' are explanatory comments.
- The prefix “diglloyd:MPG lloyd$ ” is a prompt emitted by the command line; do not type this; your system will have something of the same form reflecting your own system names.
- Commands to type are shown in bold.
Quick general tips for the command line
- Spaces matter; they are used as separators on the command line. Hence “Macintosh HD” is a nuisance name for a volume, as is any file name with spaces (enclose in straight quotes ""). Hence I name my boot volume “Boot”, which is also shorter and easier to type.
- Directory paths are separated by a forward slash "/".
- Case sensitive: Boot ≠ boot ≠ BOOT.
- The tab key will auto-complete filenames.
- There are a variety of special characters to be aware of, but the main useful one is the "*" character which can be used to wild card file/folder names instead of typing them out (e.g. “ls *.jpg” to list all .jpg files).
Brief examples of commands in Terminal
The basics.
TIP: on macOS, files and folders (any number) can be dragged from the Finder into the Terminal window, negating any need to type them.
Change directory
# change to home directory diglloyd:MPG lloyd$ cd # display current directory diglloyd:MPG lloyd$ pwd # change to top level of the volume 'Master' diglloyd:MPG lloyd$ cd /Volumes/Master # change to top level of boot volume diglloyd:MPG lloyd$ cd / # change to Applications folder on boot volume diglloyd:MPG lloyd$ cd /Applications
List files
# list files in current directory diglloyd:MPG lloyd$ ls # list files in current directory, recursively diglloyd:MPG lloyd$ ls -lR # list files in directory Photos on volume Master diglloyd:MPG lloyd$ ls /Volumes/Master/Photos # list all .jpg and .JPG files in current directory (wild card) diglloyd:MPG lloyd$ ls *.jpg *.JPG
Run a command in the current directory
# run the command verifyVolumes.sh, found in the current directory diglloyd:MPG lloyd$ ./VerifyVolumes.sh