Change directory quickly with cd
cd navigates the working directory; use -, ~ and pushd/popd for convenience.
Quick references
61 compact commands and observations collected while building software. They are intentionally short and written to be useful again without a long introduction.
Commands and shell behavior kept as a concise working reference.
cd navigates the working directory; use -, ~ and pushd/popd for convenience.
Set file permissions using chmod; octal and symbolic modes available.
Use df to show disk free space; -h shows human-readable sizes.
du reports directory and file sizes; use -sh for human-readable summaries.
Clear the terminal with clear or control-L, and reset a terminal that is in a bad state.
Use ulimit to set resource limits for shells and processes.
Use coproc to run a process and communicate with it via file descriptors.
Use mkdir -p to create nested directories safely from scripts.
Quick wget examples for downloading files and resuming partial downloads.
export makes variables available to child processes; assign then export or do both on one line.
Use printf for predictable, formatted output instead of echo.
Here-strings (`<<<`) feed a short string as stdin to a command.
Use shellcheck to find common shell scripting mistakes.
Use cat, less, more to view file contents; tail -f follows logs.
Use rm to remove files; consider safer alternatives interactively.
Use Ctrl+R to reverse-search your shell history interactively.
Use grep for pattern search; -R to recurse, -n for line numbers, -i for ignore-case.
Copy files over SSH using scp; consider rsync for complex syncs.
Display Bash version and release info.
head prints the first N lines of a file; combine with tail or sed for ranges.
Use tail to show last lines or follow a growing file.
ss inspects sockets; use -ltnp to list TCP listening ports with processes.
Sort lines and remove duplicates with sort and uniq; use -V for version-aware sorting.
Use `source` or `.` to run a script in the current shell so it can set variables/functions.
sed performs text transforms in a stream; safe inline edits with backups.
Use ( ) for subshells and { } for grouping commands in the current shell.
Use envsubst to replace $VAR placeholders in templates safely.
Use rsync for efficient, resumable synchronization; -a preserves attributes.
Perform arithmetic inside bash scripts with $(( )) or let.
Change owner and group of a file.
Start a process with lower priority using nice.
Use free -h to inspect system memory usage.
Use cmp to compare two files byte-by-byte.
Use cp to copy files and directories.
Create or update file timestamps with touch.
Use FIFOs to connect unrelated processes.
Use dirname to get the directory component of a path.
Use curl to download or interact with HTTP endpoints.
Search for files by name, type, size, and more using find.
Use select to build simple interactive menus in bash scripts.
Quick: list files including hidden and permissions.
Move or rename files using mv.
Sleep for a number of seconds.
Show environment variables and inspect PATH.
Show current directory.
Use <(...) or >(...) to pass command output or input as a filename.
Prompt and read input into a variable with read.
List recent shell commands.
Print kernel and OS information.
Use trap to run cleanup on EXIT or signals.
Use flock to prevent concurrent script runs from clobbering files.
Small observations about tools, communication, project evidence, and delivery.
How to add policy-based authorization using Oso in a Node.js app with a minimal example.
Small LinkedIn habits that make your profile and posts discoverable to recruiters and potential clients.
Make your GitHub profile and repos speak for you: README, pinned projects, issues, and contributions.
A lean portfolio structure to showcase work, skills, and contact channels for recruiters and clients.
Which metrics to show on your portfolio and how to present them so they communicate value quickly.
Practical SEO tips for technical bloggers who want organic traffic and recruiter discovery.
How to tell the story of your technical work so recruiters and clients remember you.
How contributing to open source can surface you to recruiters and how to do it efficiently.
A fast, repeatable proposal template to win freelance clients without over-engineering.
How to write concise project case studies that highlight impact and attract clients or recruiters.