# Maker Command-Line Checklist

Use this note when a project is stuck and you need the next inspection command.

## Workflow

1. Write the question first: path, file, service, logs, disk, domain, or permissions.
2. Choose the smallest read-only command that can answer it.
3. Record the expected signal and the actual result.
4. Pick the next ladder or repair path from the evidence.

## Command groups

### Where am I and what is here?

- `pwd` proves the current directory.
- `ls -lah` shows names, hidden entries, owners, sizes, and timestamps.
- `find . -maxdepth 2 -type f | sort | head` gives a bounded local file inventory.

### What does the file contain?

- `head -40 file.txt` previews a bounded part of a file.
- `less file.txt` lets you page and search without changing the file.
- `grep -n "pattern" file.txt` returns matching lines with line numbers.

### Who can read or run this path?

- `namei -l /path/to/file` walks every path component.
- `stat -c '%A %U:%G %n' /path/to/file` shows mode, owner, group, and name.
- `id` shows the current user and groups.

### What changed recently?

- `git status --short` shows project changes.
- `git diff -- path/to/file` inspects one file's change.
- `find . -type f -mtime -1 | sort | head -50` lists recently modified files.

### Is the service or site alive?

- `ss -ltnp` shows listening TCP ports and owning processes.
- `curl -I https://example.com` checks headers and status.
- `systemctl status nginx --no-pager` inspects service state.

### What are the logs saying?

- `journalctl -u nginx --since '15 minutes ago' --no-pager` reads recent service logs.
- `tail -80 /var/log/nginx/error.log` reads recent error-log lines.
- `journalctl -p warning --since '1 hour ago' --no-pager` reads recent system warnings.

### Is the machine out of space?

- `df -h` checks filesystem byte usage.
- `df -i` checks inode usage.
- `du -xhd1 /var 2>/dev/null | sort -h` ranks directory sizes.

### Can the domain and certificate be trusted?

- `dig +short example.com A` checks A records.
- `curl -I http://example.com` checks plain HTTP reachability.
- `openssl s_client -connect example.com:443 -servername example.com </dev/null` inspects TLS.

## Project note format

Question:
Command:
Expected signal:
Actual result:
Next action:
