Skip to main content
::COMMAND_DICTIONARY//58 entries
lsFS_CORE

List directory contents. Shows files and folders in the current or specified directory.

ls [options] [path]
-lLong format with permissions, size, and dates
-aShow hidden files (dotfiles)
-hHuman-readable file sizes
-RList subdirectories recursively
$ ls -lah ~/projects
cdFS_CORE

Change current working directory. Navigate to any path on the filesystem.

cd [path]
~Navigate to home directory
..Move up one directory level
-Return to previous directory
$ cd ~/projects/my-app
catFS_CORE

Concatenate and print file contents to standard output.

cat [options] [file...]
-nNumber all output lines
-bNumber non-blank lines only
$ cat package.json | jq '.dependencies'
grepSEARCH

Search plain-text data sets for lines matching a regular expression pattern.

grep [options] pattern [file...]
-rSearch recursively through directories
-iCase-insensitive matching
-nShow line numbers
-lList only filenames with matches
-vInvert match (show non-matching lines)
$ grep -rn "TODO" src/
mkdirFS_CORE

Create new directories. Supports creating nested directory hierarchies.

mkdir [options] directory...
-pCreate intermediate parent directories
-mSet explicit file permission mode
$ mkdir -p src/components/ui
rmFS_CORE

Remove files or directories. Use with caution — deletions are permanent.

rm [options] file...
-rRemove directories recursively
-fForce removal without confirmation
-iPrompt before every removal
$ rm -rf node_modules
cpFS_CORE

Copy files and directories to a new location.

cp [options] source destination
-rCopy directories recursively
-iPrompt before overwriting
-vVerbose — show files being copied
$ cp -r src/ backup/
mvFS_CORE

Move or rename files and directories.

mv [options] source destination
-iPrompt before overwriting
-nDo not overwrite existing files
$ mv old-name.ts new-name.ts
chmodPERMISSIONS

Change file access permissions using numeric or symbolic notation.

chmod [options] mode file
-RApply recursively to directories
$ chmod +x deploy.sh
curlNETWORK

Transfer data from or to a server using various protocols.

curl [options] URL
-XSpecify HTTP method (GET, POST, etc.)
-HAdd custom header
-dSend POST data
-oWrite output to file
-sSilent mode (no progress)
$ curl -s https://api.example.com/data | jq .
sshNETWORK

Secure shell — connect to remote servers over encrypted connections.

ssh [options] user@hostname
-iSpecify identity (private key) file
-pConnect on specific port
-LLocal port forwarding
$ ssh -i ~/.ssh/key.pem user@server.com
gitDEV

Distributed version control system. Track changes, collaborate, and manage code history.

git <command> [options]
cloneCopy a remote repository locally
addStage changes for commit
commitRecord staged changes
pushUpload local commits to remote
pullFetch and merge remote changes
$ git add . && git commit -m "feat: add new feature"
npmDEV

Node.js package manager. Install dependencies, run scripts, and manage projects.

npm <command> [options]
installInstall project dependencies
runExecute a script from package.json
initCreate a new package.json
$ npm install && npm run dev
mcp-serverAGENT

Initialize a Model Context Protocol server to expose local tools and data to AI agents.

mcp-server [options]
--allow-dirMount a directory path for agent access
--modeSet access mode: ro (read-only) or rw (read/write)
--envPass environment variables to the server
$ mcp-server --allow-dir ./project --mode rw
sedTEXT

Stream editor for filtering and transforming text line-by-line using patterns and substitution rules.

sed [options] 'command' [file...]
-i ''Edit file in place (macOS requires empty string)
-nSuppress automatic output; only print with p command
-eAdd multiple editing commands
s/old/new/gSubstitute all occurrences of old with new
$ sed -i '' 's/localhost/0.0.0.0/g' config.txt
awkTEXT

Pattern-scanning and text-processing language. Works with columnar data, splitting lines into fields.

awk [options] 'program' [file...]
-FSet field separator (default is whitespace)
$1, $2...Access fields by position ($0 = whole line)
NRCurrent line number
NFNumber of fields in current line
$ awk -F',' '{print $1, $3}' data.csv
findSEARCH

Recursively search for files and directories matching criteria like name, type, size, or modification time.

find [path] [expression]
-nameMatch filename pattern (supports wildcards)
-type fMatch regular files only
-type dMatch directories only
-sizeMatch by file size (+10M = larger than 10MB)
-mtimeMatch by modification time in days
-execRun a command on each matched file
$ find . -name '*.ts' -type f -mtime -7
xargsTEXT

Build and execute commands from standard input. Converts piped data into arguments for another command.

xargs [options] [command]
-I {}Replace {} with each input item
-nMax arguments per command invocation
-PMax parallel processes
-0Use null delimiter (pair with find -print0)
$ find . -name '*.log' | xargs rm
tarFS_CORE

Archive and compress files and directories. The standard tool for creating and extracting .tar.gz bundles.

tar [options] [archive] [files...]
-cCreate a new archive
-xExtract files from archive
-zCompress/decompress with gzip (.tar.gz)
-fSpecify archive filename
-vVerbose — list files processed
-tList contents of an archive
$ tar -czf backup.tar.gz ./src
brewDEV

Homebrew — the macOS package manager. Install, update, and manage command-line tools and applications.

brew <command> [options]
installInstall a package (formula or cask)
uninstallRemove an installed package
updateFetch newest Homebrew and formulae
upgradeUpgrade all outdated packages
listList all installed packages
searchSearch for available packages
infoShow details about a package
$ brew install ripgrep node python3
pipDEV

Python package installer. Install, upgrade, and manage Python libraries and tools.

pip [command] [options]
installInstall a package
install -rInstall from requirements.txt
uninstallRemove a package
listList installed packages
freezeOutput installed packages in requirements format
--upgradeUpgrade to latest version
$ pip install requests flask && pip freeze > requirements.txt
dockerDEVOPS

Container platform for building, shipping, and running applications in isolated environments.

docker <command> [options]
runCreate and start a container
buildBuild an image from a Dockerfile
psList running containers
imagesList local images
stopStop a running container
compose upStart services defined in docker-compose.yml
-dRun container in detached (background) mode
-pMap host port to container port
$ docker run -d -p 3000:3000 my-app
docker-composeDEVOPS

Define and run multi-container applications with a YAML configuration file.

docker compose <command> [options]
upCreate and start all services
downStop and remove all services
buildRebuild service images
logsView service logs
-dDetached mode (background)
--buildRebuild before starting
$ docker compose up -d --build
wgetNETWORK

Download files from the web via HTTP, HTTPS, and FTP. Supports recursive downloads.

wget [options] URL
-OWrite output to specified file
-qQuiet mode (no output)
-rRecursive download
-cContinue a partially downloaded file
$ wget -O data.json https://api.example.com/export
headTEXT

Display the first lines of a file. Defaults to 10 lines.

head [options] [file]
-nNumber of lines to display
-cNumber of bytes to display
$ head -n 20 server.log
tailTEXT

Display the last lines of a file. Use -f to follow real-time updates (great for logs).

tail [options] [file]
-nNumber of lines to display
-fFollow — output appended data as the file grows
-FFollow and retry if file is rotated
$ tail -f /var/log/system.log
wcTEXT

Word, line, character, and byte count for files or piped input.

wc [options] [file...]
-lCount lines only
-wCount words only
-cCount bytes
-mCount characters
$ find . -name '*.ts' | wc -l
sortTEXT

Sort lines of text alphabetically, numerically, or by custom keys.

sort [options] [file]
-rReverse sort order
-nNumeric sort
-uRemove duplicates (unique)
-kSort by specific field/column
-tSet field delimiter
$ sort -t',' -k2 -rn data.csv
uniqTEXT

Report or filter out repeated lines. Usually paired with sort since it only detects adjacent duplicates.

uniq [options] [file]
-cPrefix lines with count of occurrences
-dOnly print duplicate lines
-uOnly print unique lines
$ sort access.log | uniq -c | sort -rn | head
cutTEXT

Remove sections from each line of files. Extract columns from delimited data.

cut [options] [file]
-dSet delimiter (default is tab)
-fSelect fields by number (e.g., -f1,3)
-cSelect characters by position
$ cut -d',' -f1,3 data.csv
teeTEXT

Read from stdin and write to both stdout and files simultaneously. Useful for logging pipeline output.

tee [options] [file...]
-aAppend to files instead of overwriting
$ npm run build 2>&1 | tee build.log
trTEXT

Translate, squeeze, or delete characters from stdin. Useful for case conversion and cleanup.

tr [options] SET1 [SET2]
-dDelete characters in SET1
-sSqueeze repeated characters to one
$ echo 'HELLO' | tr 'A-Z' 'a-z'
diffTEXT

Compare files line by line and show differences. Foundation of git diff and patch workflows.

diff [options] file1 file2
-uUnified format (like git diff)
-rRecursively compare directories
--colorColorize output
-qReport only whether files differ
$ diff -u old.ts new.ts
treeFS_CORE

Display directory structure as an indented tree. Great for visualizing project layout.

tree [options] [directory]
-LLimit depth of recursion
-IExclude pattern (e.g., node_modules)
-aShow hidden files
--dirsfirstList directories before files
$ tree -L 3 -I 'node_modules|dist' .
whichSYSTEM

Locate a command's executable by searching PATH. Shows which version will run when you type a command.

which [command]
-aShow all matching executables in PATH
$ which node python3 git
envSYSTEM

Display or modify the environment. Without arguments, prints all environment variables.

env [options] [name=value...] [command]
-iStart with an empty environment
-uRemove a variable from the environment
$ env NODE_ENV=production npm run build
exportSYSTEM

Set environment variables for the current shell session and its child processes.

export NAME=value
$ export PATH="$HOME/bin:$PATH"
aliasSYSTEM

Create shorthand names for commands. Define in ~/.zshrc to make permanent.

alias name='command'
$ alias ll='ls -la' gs='git status'
psSYSTEM

Report a snapshot of currently running processes.

ps [options]
auxShow all processes with details
-eSelect all processes
-fFull format listing
$ ps aux | grep node
killSYSTEM

Send signals to processes. Default signal is TERM (graceful shutdown).

kill [options] PID
-9SIGKILL — force terminate immediately
-15SIGTERM — graceful shutdown (default)
-lList all signal names
$ kill -9 $(lsof -ti:3000)
lsofSYSTEM

List open files and the processes using them. Essential for finding what's using a port.

lsof [options]
-iList network connections
-ti:PORTGet PID using a specific port
-p PIDFiles opened by a specific process
$ lsof -i:3000
topSYSTEM

Display real-time system resource usage — CPU, memory, and running processes.

top [options]
-o cpuSort by CPU usage
-o memSort by memory usage
$ top -o cpu
duFS_CORE

Estimate file and directory disk usage. Find what's consuming space.

du [options] [path]
-hHuman-readable sizes
-sSummary (total only)
-dMax depth of directories
$ du -sh * | sort -rh | head
dfFS_CORE

Report filesystem disk space usage. Shows free and used space on mounted volumes.

df [options]
-hHuman-readable output
$ df -h
lnFS_CORE

Create links between files. Symbolic links (symlinks) are like shortcuts or aliases.

ln [options] target link_name
-sCreate a symbolic (soft) link
-fForce — overwrite existing link
$ ln -s /usr/local/bin/python3 /usr/local/bin/python
chownPERMISSIONS

Change file owner and group. Often needed when fixing permission issues.

chown [options] owner[:group] file
-RApply recursively to directories
$ sudo chown -R $(whoami) /usr/local/lib
rsyncNETWORK

Fast, versatile file copying tool. Syncs files locally or to/from remote servers with delta transfers.

rsync [options] source destination
-aArchive mode (preserves permissions, timestamps)
-vVerbose output
-zCompress during transfer
--deleteDelete files in destination not in source
--dry-runShow what would be transferred
-e sshUse SSH as transport
$ rsync -avz --delete ./dist/ user@server:/var/www/
scpNETWORK

Securely copy files between local and remote hosts over SSH.

scp [options] source destination
-rRecursively copy directories
-iSpecify identity (key) file
-PSpecify port
$ scp -r ./build user@server:/var/www/app
pingNETWORK

Test network connectivity to a host by sending ICMP packets.

ping [options] host
-cNumber of pings to send
-iInterval between pings (seconds)
$ ping -c 4 google.com
nslookupNETWORK

Query DNS records for a domain. Find IP addresses, mail servers, and other DNS information.

nslookup [options] domain
$ nslookup example.com
npxDEV

Execute npm package binaries without installing globally. Runs the latest version of a CLI tool.

npx [options] command [args]
-yAutomatically confirm installation prompts
-pSpecify packages to install
$ npx create-next-app my-project
nvmDEV

Node Version Manager — install and switch between multiple Node.js versions.

nvm <command> [version]
installInstall a Node.js version
useSwitch to a specific version
lsList installed versions
alias defaultSet the default version
$ nvm install 22 && nvm use 22
makeDEV

Build automation tool using Makefile rules. Common in C/C++ projects but useful for any task automation.

make [options] [target]
-jNumber of parallel jobs
-fSpecify a different Makefile
$ make build && make deploy
cronSYSTEM

Schedule commands to run at specified times. Edit schedule with crontab -e.

crontab [options]
-eEdit the crontab file
-lList current cron jobs
-rRemove all cron jobs
$ crontab -e # then add: 0 */6 * * * /path/to/backup.sh
manSYSTEM

Display the manual page for a command. The built-in documentation system for Unix commands.

man [section] command
$ man grep
historySYSTEM

Display or manipulate the command history list. Use ! to re-run previous commands.

history [n]
!!Repeat the last command
!nRepeat command number n
!stringRepeat last command starting with string
$ history | grep 'git commit'
pbcopySYSTEM

macOS-specific: copy stdin to the system clipboard. Pair with pbpaste to retrieve.

command | pbcopy
$ cat ~/.ssh/id_ed25519.pub | pbcopy
jqDATA

Command-line JSON processor. Parse, filter, and transform JSON data.

jq [options] <filter> [file...]
-rRaw output (strips quotes)
-cCompact output
-sSlurp — read entire input as single array
.Identity — pretty-print JSON
$ cat data.json | jq '.users[] | .name'