Where apps hide your files
Apple's Terminal keeps every profile, font and colour choice in a single preferences file, not in a folder of its own. You can find that file, and for sharing a look between Macs there is a proper export that makes a small .terminal file.
~/Library/Preferences/com.apple.Terminal.plist
All of Terminal's profiles live in this one property list, under a key called Window Settings. The key holds one entry per profile (on the Mac used for this guide the names included Basic, Pro, Homebrew, Ocean, Man Page and Novel, among others). Other keys in the file record which profile is the default, which one opens at startup, window positions, and whether Secure Keyboard Entry is on.
~/Library is hidden in some views. Open the folder with Go > Go to Folder (⇧⌘G) and paste ~/Library/Preferences, or in Finder open the Go menu and hold ⌥ to reveal Library. From Terminal:
open -R ~/Library/Preferences/com.apple.Terminal.plist
Terminal is not sandboxed (its code signature carries no sandbox entitlement), so there is no container folder for it. On the Mac used for this guide there was no ~/Library/Application Support/Terminal folder either.
Do not copy the plist to share one profile. Use the built-in export, which produces a small .terminal file holding just that profile.
That same action menu holds Import…, Duplicate Profile and Restore Default Profiles. Beside it, the Default button makes the selected profile the default. There is also Shell > Export Settings… in the menu bar, which saves the settings of the window you are in as a .terminal file, and Shell > Use Settings as Default.
To import on another Mac, double-click the .terminal file, or use Import… in the action menu. It appears in the Profiles list, usually with a name matching the file. To make it the default, select it and click Default.
A profile carries more than looks: the font, colours, window size, the command to run at start, and what happens when the shell exits. That is why an exported .terminal file is worth keeping if you spent time tuning a profile. It is plain data, and safe to email to yourself.
Three settings decide it, and each maps to its own key in the plist:
| Setting | Where you set it | Key in the plist |
|---|---|---|
| Default profile | Profiles tab, select a profile, click Default | Default Window Settings |
| Profile at launch | General tab, On startup, open: then New window with profile: | Startup Window Settings |
| New windows | General tab, New windows open with: (Default Profile or Same Profile) | neither of the two keys above |
To read just the default profile's name:
defaults read com.apple.Terminal "Default Window Settings"
That prints a profile name and nothing private. Avoid reading the whole file on a shared screen, as it can include paths and recently used folders.
You can, but you probably should not. macOS caches preferences in a background process, so a file you edit while Terminal is open may be ignored, or overwritten when Terminal quits. If you must, quit Terminal, use defaults or a plist editor, and keep a copy of the original first. For almost every goal, Settings and the export are safer.
Two nearby things often get confused with profiles:
~/.zsh_sessions is a folder where the default zsh setup stores per-tab history and state, so a tab Terminal restores can bring back its previous commands. It is set up by /etc/zshrc_Apple_Terminal, not by Terminal's profiles. That file's own comments say you can turn the feature off by setting SHELL_SESSIONS_DISABLE=1, typically in ~/.zshenv. The folder holds command history, so do not share it.Your shell startup files (~/.zshrc and friends) are not in Terminal's settings either. Profiles control how the window looks and which command it starts; the shell's behaviour comes from those dot-files.
For a few profiles, export each one and keep the .terminal files. That is the dependable route. Migration Assistant carries the whole plist across with your user account, and Time Machine includes it. Copying the plist by hand also works if Terminal is closed while you do it, but because of the preferences cache, log out and back in afterwards before you open Terminal again.
To put the built-in profiles back to their original settings, choose Restore Default Profiles from the action (⋯) menu in the Profiles tab. To reset everything, including your own profiles and window positions, export anything you want to keep, quit Terminal, move com.apple.Terminal.plist to the Trash in Finder, then log out and back in so the cached copy is dropped.
The plist is inside ~/Library, which Spotlight and Finder searches leave out, and its name uses Apple's reverse-domain style, not the words "Terminal profile".
Typing com.apple.Terminal into Everywhere lists the plist and any backup copy beside it, and typing .terminal finds profile files you exported and forgot where you saved. Press ⌘↵ to reveal one in Finder. It matches file names only, so it cannot tell you which profiles are inside a file.
In ~/Library/Preferences/com.apple.Terminal.plist. Profiles are stored in it under the Window Settings key.
Open Terminal > Settings > Profiles, select the profile, click the action (⋯) button under the list and choose Export…. It saves a .terminal file you can double-click on another Mac.
You can, but macOS caches preferences, so edits made while Terminal is open may be lost. Quit Terminal first, or use Settings and the export feature.
No. Command history comes from your shell, for zsh in ~/.zsh_history and ~/.zsh_sessions, not from Terminal's profiles.
Everywhere keeps track of every file on your Mac — including the folders Spotlight hides and drives you have unplugged. Free for a day, then $19 once.
Version 2.20.3 · macOS 13+ · 4.7 MB · notarised