Page MenuHomePhorge

macOS Terminal
Updated 1,200 Days AgoPublic

So, you're trying to use the Terminal app on macOS, eh? Maybe you're unfamiliar with the terminal, with macOS, or both? Well, here are some pointers for you, imaginary person and/or Sam!

Neat basics


Use the tab key all the time! Type as little as you actually have to, let tab autocomplete do all the heavy lifting!


cd

Now of course, everyone and their dog knows you use the cd command to change directories. But did you know that if you just run cd without any arguments, it returns you to your home directory? Ah, exquisitely lazy! Particularly useful on macOS, since the Terminal generally doesn't actually start you in your home directory.


pushd and popd

While most of the time one changes directories using cd, if you're going off to some other directory for a bit but planning on returning to where you currently are, pushd and popd can be quite useful. They're a classic stack, so for instance rather than

totally-real-mac:/some/place user$ cd /some/otherplace
totally-real-mac:/some/otherplace user$ {do a buncha crap}
totally-real-mac:/some/otherplace user$ cd /some/place
totally-real-mac:/some/place user$

just run

totally-real-mac:/some/place user$ pushd /some/otherplace
totally-real-mac:/some/otherplace user$ {do a buncha crap}
totally-real-mac:/some/otherplace user$ popd
totally-real-mac:/some/place user$

Obviously this isn't always that much more helpful than just using cd, but in some circumstances it can be quite nice!


alt+.

In a normal Linux terminal, alt+. calls back up the last portion of the last command you typed. So for instance, if you just ran touch somefile, then typing chmod +x and then press alt+., viola, now you have chmod +x somefile! And you can tap . multiple times to walk back through your history. This is really quite handy a lot of the time.

Unfortunately on macOS this instead just prints a ≤ character. I hate you so much, Apple.

There are two ways around this:

  1. TerminalPreferencesProfiles and checkmark "Use Option as Meta key". That fixes it entirely.
  2. Use +. instead. Unfortunately, this is not only more awkward but it's made even more awkward by requiring you to press Esc each time too, rather than just . like with alt+., so you should really just use option 1.

Okay, now what?

Install MacPorts

The Ruby brogrammers love Homebrew, but frankly MacPorts is probably better (as you might expect, when the other option is beloved by people who also love Ruby).

Play ambient noise that sounds like you're on the Enterprise D!

  1. Download the zip of the Mac version of SoX, or use MacPorts.
  2. Just run the following command:
    1. For a downloaded and unzipped version: ./Downloads/sox-14.4.2/play -n -c2 synth whitenoise band -n 100 24 band -n 300 100 gain +10 | ./Downloads/sox-14.4.2/play -n -c2 synth whitenoise band -n 100 20 band -n 50 20 gain +25 fade h 1 864000 1
    2. Via MacPorts: play -n -c2 synth whitenoise band -n 100 24 band -n 300 100 gain +10 | play -n -c2 synth whitenoise band -n 100 20 band -n 50 20 gain +25 fade h 1 864000 1

Use KDE Craft

Rather than MacPorts, you can directly bootstrap up and compile KDE applications. See:

So what shell are you using?

Apple traditionally used Bash, with an emphasis on traditionally; their hatred of the GPLv3 meant being stuck at a very old version. Recently they've decided to switch to Zsh. You could too, dear reader; or you could install a fresh version of Bash, or some other shell entirely.

Last Author
keithzg
Last Edited
Jul 5 2021, 9:32 PM