Shell scripting checkpoint
Complete a mini script-review workflow.
Understand the pattern
Junior operators build confidence by gathering evidence before changing systems.
test- Evaluate a file or string condition through its exit status rather than printed output.
A successful test usually prints nothing; inspect $? or chain a command.
printf- Format data deliberately, including separators and final newlines.
A format string controls output; a newline is data, not an automatic guarantee.
tee- Copy a stream both to a file and standard output; -a appends.
tee can overwrite a file even though the output is also visible on screen.
chmod- Change permissions using an octal mode or a symbolic adjustment. Each rwx bit belongs to owner, group, or other.
Do not use 777 as a blanket fix. Grant the smallest access needed.
stat- Inspect a file or directory metadata record, including ownership, permissions, and size.
Metadata and file contents answer different questions.
Worked example and expected result
$ test -f scripts/deploy.sh(no output; exit 0)
Exit status: 0. The command completed successfully in the training fixture.
$ printf shell-checkpoint | tee lab/shell-checkpoint.txtshell-checkpoint
Exit status: 0. The command completed successfully in the training fixture.
$ chmod 600 lab/shell-checkpoint.txt(no output; exit 0)
Exit status: 0. The command completed successfully in the training fixture.
$ stat lab/shell-checkpoint.txtPath: /home/learner/lab/shell-checkpoint.txt Type: file Mode: -rw------- Owner: learner Group: learners Size: 16 bytes
Exit status: 0. The command completed successfully in the training fixture.
Explain it
Apply it elsewhere
Keep the momentum.
Complete the lab, then explain and apply the pattern.
Next: Shebang readingTry an incident drillAnonymous lesson and mastery progress lasts for this session. Sign in to keep synced lesson XP between sessions; mastery stays device-local. No speed bonus, lost lives, or hint penalties.