Skip to content

Instantly share code, notes, and snippets.

@itsmattsoria
Last active March 19, 2024 04:30
Show Gist options
  • Save itsmattsoria/7195274 to your computer and use it in GitHub Desktop.
Save itsmattsoria/7195274 to your computer and use it in GitHub Desktop.
Mac Terminal Cheat Sheet

SHORTCUTS

Key/Command Description
Tab Auto-complete files and folder names
Ctrl + A Go to the beginning of the line you are currently typing on
Ctrl + E Go to the end of the line you are currently typing on
Ctrl + U Clear the line before the cursor
Ctrl + K Clear the line after the cursor
Ctrl + W Delete the word before the cursor
Ctrl + T Swap the last two characters before the cursor
Esc + T Swap the last two words before the cursor
Ctrl + R Lets you search through previously used commands
Ctrl + L or Command + K Clears the Screen
Ctrl + C Kill whatever you are running
Ctrl + D Exit the current shell

CORE COMMANDS

cd Home directory
cd [folder] Change directory
cd ~ Home directory, e.g. ‘cd ~/folder/’
cd / Root of drive
ls Short listing
ls -l Long listing
ls -a Listing incl. hidden files
ls -lh Long listing with Human readable file sizes
ls -R Entire content of folder recursively
sudo [command] Run command with the security privileges of the superuser (Super User DO)
open [file] Opens a file
open . Opens the directory
top Displays active processes. Press q to quit
nano [file] Opens the Terminal it’s editor
pico [file] Opens the Terminal it’s editor
q Exit
clear Clear screen

COMMAND HISTORY

history n Shows the stuff typed – add a number to limit the last n items
ctrl-r Interactively search through previously typed commands
![value] Execute the last command typed that starts with ‘value’
!! Execute the last command typed

FILE MANAGEMENT

touch [file] Create new file
pwd Full path to working directory
.. Parent/enclosing directory, e.g.
ls -l .. Long listing of parent directory
cd ../../ Move 2 levels up
. Current folder
cat Concatenate to screen
rm [file] Remove a file, e.g. rm [file] [file]
rm -i [file] Remove with confirmation
rm -r [dir] Remove a directory and contents
rm -f [file] Force removal without confirmation
rm -i [file] Will display prompt before
cp [file] [newfile] Copy file to file
cp [file] [dir] Copy file to directory
mv [file] [new filename] Move/Rename, e.g. mv -v [file] [dir]

DIRECTORY MANAGEMENT

mkdir [dir] Create new directory
mkdir -p [dir]/[dir] Create nested directories
rmdir [dir] Remove directory ( only operates on empty directories )
rm -R [dir] Remove directory and contents

PIPES – Allows to combine multiple commands that generate output

more Output content delivered in screensize chunks
> [file] Push output to file, keep in mind it will get overwritten
>> [file] Append output to existing file
< Tell command to read content from a fi

HELP

[command] -h Offers help
[command] —help Offers help
[command] help Offers help
reset Resets the terminal display
man [command] Show the help for ‘command’
whatis [command] Gives a one-line description of ‘command’
@zengtianli
Copy link

great work! thanks

@aadydas
Copy link

aadydas commented May 3, 2020

thanks a lot!

@judylime
Copy link

Thanks

@politaleon
Copy link

Great! Thanks!

@harshakokel
Copy link

cd - for going back to previous location

@ulilalbab
Copy link

thanks

@bluebuddah
Copy link

Keybase proof

I hereby claim:

  • I am bluebuddah on github.
  • I am ewh2085 (https://keybase.io/ewh2085) on keybase.
  • I have a public key ASCYXex4tlXNlSz-O4BMTgXAy3RKBtpi1j6XYvGS_QprSwo

To claim this, I am signing this object:

{
  "body": {
    "key": {
      "eldest_kid": "0120b43e34d2a86152f4e84e274652b68e3fd27d09c22f464dfb19dbee2f07c6bac30a",
      "host": "keybase.io",
      "kid": "0120985dec78b655cd952cfe3b804c4e05c0cb744a06da62d63e9762f192fd0a6b4b0a",
      "uid": "ccbe220ddee72953ca067a109f5ecd19",
      "username": "ewh2085"
    },
    "merkle_root": {
      "ctime": 1598319087,
      "hash": "87f6b7fff3063d701df671f85cca917d3fd541a21c59693eb02d8c248447ab7891b0cc857482a80b009065080c68f040f1a50389ea57785a9b2b9f7fc51be6d2",
      "hash_meta": "1684bced3fc76124f04d1348982178e001bb9d8d039a4d0aad243ab2bdff3d4a",
      "seqno": 17374172
    },
    "service": {
      "entropy": "55rlSr7A0Jvi5df2S0Xj/b9x",
      "name": "github",
      "username": "bluebuddah"
    },
    "type": "web_service_binding",
    "version": 2
  },
  "client": {
    "name": "keybase.io go client",
    "version": "5.5.0"
  },
  "ctime": 1598319109,
  "expire_in": 504576000,
  "prev": "0293e57488477cc8d5fc95d223bb686bee7020ded3df07e28a17badafda7a15b",
  "seqno": 69,
  "tag": "signature"
}

with the key ASCYXex4tlXNlSz-O4BMTgXAy3RKBtpi1j6XYvGS_QprSwo, yielding the signature:

hKRib2R5hqhkZXRhY2hlZMOpaGFzaF90eXBlCqNrZXnEIwEgmF3seLZVzZUs/juATE4FwMt0SgbaYtY+l2Lxkv0Ka0sKp3BheWxvYWTESpcCRcQgApPldIhHfMjV/JXSI7toa+5wIN7T3wfiihe62v2noVvEIO1lzk66y2B0/4CRFlZPlyf18L/pYUyGC4Mj4qHm6EfTAgHCo3NpZ8RAjC11467UgZJpfabx9ox1KG6YiFoF31NkiNO1RyMN1rYsS4ozEudW1cYIbVyh55cCR8bkxdm6L7Jp+nCmcHq1B6hzaWdfdHlwZSCkaGFzaIKkdHlwZQildmFsdWXEIEsFrIckNOJ52ClMcJQIyXEq/ITzgigIgrxyJb3PlPlXo3RhZ80CAqd2ZXJzaW9uAQ==

And finally, I am proving ownership of the github account by posting this as a gist.

My publicly-auditable identity:

https://keybase.io/ewh2085

From the command line:

Consider the keybase command line program.

# look me up
keybase id ewh2085

@Techiefrankie
Copy link

Serves the purpose.

@aficici
Copy link

aficici commented Sep 8, 2020

Thank you. Very simple and informative.

@rudrathegreat
Copy link

I believe most of the commands mentioned on mac and the exact same for linux

@SynergyBest
Copy link

Thanks very useful

Copy link

ghost commented Nov 20, 2020

Screen Shot 2020-11-20 at 11 59 06 AM

I am getting this update message, only to be told file is corrupted when trying to update, then it reminds me the next day. I searched online and found a --ignore command for Terminal, but that doesn't seem to work in Big Sur? So I'm not sure how to remove this update as the application is nowhere to be found on my laptop.

@ErikaDva
Copy link

Thank you!

@adminjsentu
Copy link

Awesome and thank you! :neckbeard:

@thanhphanle
Copy link

Thank you <3

@julianmartinez10
Copy link

Huge help. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment