Text pipeline checkpoint
Combine search, field extraction, transform, and counting.
Understand the pattern
Junior operators build confidence by gathering evidence before changing systems.
grep- Select input lines that match a pattern; -i ignores case, -n adds line numbers, and -v inverts selection.
No matches is exit status 1, which is different from a malformed invocation.
awk- Extract whitespace-delimited fields with the supported print patterns.
Quote awk programs so shell variable expansion does not consume $1; single quotes are usually appropriate.
printf- Format data deliberately, including separators and final newlines.
A format string controls output; a newline is data, not an automatic guarantee.
tr- Translate or remove supported character sets from a stream.
tr operates on characters, not whole words or regular-expression matches.
wc- Count input. -l counts newline characters, -w counts whitespace-delimited words, and -c counts bytes.
Text without a final newline may have fewer counted lines than visible rows.
Worked example and expected result
$ grep denied /var/log/auth.log | awk '{print $5}'sshd[118]: sshd[141]:
Exit status: 0. The command completed successfully in the training fixture.
$ printf incident | tr a-z A-ZINCIDENT
Exit status: 0. The command completed successfully in the training fixture.
$ grep denied /var/log/auth.log | wc -l2
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: Logrotate config reviewTry 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.