The Terminal app allows you to control your Mac using a command prompt. Why would you want to do that? Well, perhaps because you’re used to working on a command line in a Unix-based system and prefer to work that way. Terminal is a Mac command line interface. There are several advantages to using Terminal to accomplish some tasks — it’s usually quicker, for example. In order to use it, however, you’ll need to get to grips with its basic commands and functions. Once you’ve done that, you can dig deeper and learn more commands and use your Mac’s command prompt for more complex, as well as some fun, tasks.
How to open Terminal on Mac
The Terminal app is in the Utilities folder in Applications. To open it, either open your Applications folder, then open Utilities and double-click on Terminal, or press Command - spacebar to launch Spotlight and type "Terminal," then double-click the search result.
You’ll see a small window with a white background open on your desktop. In the title bar are your username, the word "bash" and the dimensions of the window in pixels. Bash stands for "Bourne again shell". There are a number of different shells that can run Unix commands, and on the Mac Bash is the one used by Terminal.
If you want to make the window bigger, click on the bottom right corner and drag it outwards. If you don’t like the black text on a white background, go to the Shell menu, choose New Window and select from the options in the list.
Basic Mac commands in Terminal
The quickest way to get to know Terminal and understand how it works is to start using it. But before we do that, it’s worth spending a little time getting to know how commands work. To run a command, you just type it at the cursor and hit Return to execute.
Every command is made up of three elements: the command itself, an argument which tells the command what resource it should operate on, and an option that modifies the output. So, for example, to move a file from one folder to another on your Mac, you’d use the move command "mv" and then type the location of the file you want to move, including the file name and the location where you want to move it to.
Let’s try it.
Type cd ~/Documentsthen and press Return to navigate to your Home folder.
Type lsthen Return (you type Return after every command).
You should now see a list of all the files in your Documents folder — ls is the command for listing files.
To see a list of all the commands available in Terminal, hold down the Escape key and then press y when you see a question asking if you want to see all the possibilities. To see more commands, press Return.
Unix has its own built-in manual. So, to learn more about a command type man [name of command], where "command" is the name of the command you want find out more about.
There are a few things you need to bear in mind when you’re typing commands in Terminal, or any other command-line tool. Firstly, every character matters, including spaces. So when you’re copying a command you see here, make sure you include the spaces and that characters are in the correct case.
You can’t use a mouse or trackpad in Terminal, but you can navigate using the arrow keys. If you want to re-run a command, tap the up arrow key until you reach it, then press Return. To interrupt a command that’s already running, type Control-C.
Commands are always executed in the current location. So, if you don’t specify a location in the command, it will run wherever you last moved to or where the last command was run. Use the cdcommand, followed by a directory path, like in Step 1 above, to specify the folder where you want a command to run.
There is another way to specify a location: go to the Finder, navigate to the file or folder you want and drag it onto the Terminal window, with the cursor at the point where you would have typed the path.
Here’s another example. This time, we’ll create a new folder inside your Documents directory and call it "TerminalTest."
Open a Finder window and navigate to your Documents folder.
Type cd and drag the Documents folder onto the Terminal window.
Now, type mkdir "TerminalTest"
Go back to the Finder, open Text Edit and create a new file called "TerminalTestFile.rtf". Now save it to the TerminalTest folder in your Documents folder.
In the Terminal window, type cd ~/Documents/TerminalTest then Return. Now type lsand you should see "TerminalTestFile" listed.
To change the name of the file, type this, pressing Return after every step:
mv TerminalTestFile TerminalTestFile2.rtf
That will change the name of the file to "TerminalTestFile2". You can, of course, use any name you like. The mv command means "move" and you can also use it to move files from one directory to another. In that case, you’d keep the file names the same, but specify another directory before typing the the second instance of the name, like this:
mv ~/Documents/TerminalTest TerminalTestFile.rtf ~/Documents/TerminalTest2 TerminalTestFile.rtf
More advanced Terminal commands
Terminal can be used for all sorts of different tasks. Some of them can be performed in the Finder, but are quicker in Terminal. Others access deep-rooted parts of macOS that aren’t accessible from the Finder without specialist applications. Here are a few examples.
Copy files from one folder to another
In a Terminal window, type Ditto [folder 1] [folder 1] where "folder 1" is the folder that hosts the files and "folder 2" is the folder you want to move them to.
To see the files being copied in the Terminal window, type -v after the command.
Download files from the internet
You’ll need the URL of the file you want to download in order to use Terminal for this.
curl -O [URL of file you want to download]
If you want to download the file to a directory other than your Downloads folder, replace ~/Downloads/ with the path to that folder, or drag it onto the Terminal window after you type the cd command.
Change the default location for screenshots
If you don’t want macOS to save screenshots to your Desktop when you press Command-Shift-3, you can change the default location in Terminal
defaults write com.apple.screencapture location [path to folder where you want screenshots to be saved]
Change the default file type for screenshots
By default, macOS saves screenshots as .png files. To change that to .jpg, do this:
defaults write com.apple.screencapture type JPG
Delete all files in a folder
The command used to delete, or remove, files in Terminal is rm. So, for example, if you wanted to remove a file in your Documents folder named "oldfile.rtf" you’d use cd ~/Documents to go to your Documents folder then to delete the file. As it stands, that will delete the file without further intervention from you. If you want to confirm the file to be deleted, use -i as in rm -i oldfile.rtf
To delete all the files and sub-folders in a directory named "oldfolder", the command is rm -R oldfolder and to confirm each file should be deleted, rm -iR oldfolder
Just because you can use Terminal to delete files on your Mac, doesn’t mean you should. It’s a relatively blunt instrument, deleting only those files and folders you specify.
Another way to free up space
If your goal in removing files or folders is to free up space on your Mac, or to remove junk files that are causing your Mac to run slowly, it’s far better to use an app designed for the purpose. CleanMyMac 3 is one such app. It will scan your Mac for files and recommend which ones you can delete safely, as well as telling you how much space you’ll save. And once you’ve decided which files to delete, you can get rid of them in a click. You can download CleanMyMac here.
As you can see, while Terminal may look scary and seem like it’s difficult to use, it really isn’t. The key is learning a few commands, such as those we’ve outlined above, and getting to know the syntax for those commands.
However, you should be careful when using Terminal, it’s a powerful tool that has deep access to your Mac’s system files. Check commands by googling them if you’re not sure what they do. And if you need to delete files to save space, use an app like CleanMyMac 3 to do it. It’s much safer!