Skip to content
Clairos Learn

Shell scripting · Lesson 7 of 31 · 8 minutes

Awk reports

Build a small report from fields.

Mastery 0/3Run itExplain itApply it
learner@clairosSimulated Linux lab
learner@clairos:~ $
↑ history · Tab complete · Ctrl+C cancel · Esc, Tab to leaveExit 0

Understand the pattern

Junior operators build confidence by gathering evidence before changing systems.

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.

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.

cat
Read one or more files to standard output without editing their contents.

Reading a source file should precede changing it; avoid printing real secrets.

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
$ awk '{print $5}' /var/log/auth.log | tee lab/auth-processes.txt
sshd[104]:
sshd[118]:
sudo[126]:
sshd[141]:

Exit status: 0. The command completed successfully in the training fixture.

$ cat lab/auth-processes.txt
sshd[104]:
sshd[118]:
sudo[126]:
sshd[141]:

Exit status: 0. The command completed successfully in the training fixture.

$ wc -l lab/auth-processes.txt
4 lab/auth-processes.txt

Exit status: 0. The command completed successfully in the training fixture.

Try a variation

Repeat this workflow in the sandbox with a different scratch filename. Keep the system fixtures unchanged and compare the observed output with your expectation before moving on.

Explain it

In “Awk reports”, which interpretation is safe?

Apply it elsewhere

Before adapting the cat workflow from “Awk reports” to another server, what should you do?

Keep the momentum.

Complete the lab, then explain and apply the pattern.

Next: Cut in scriptsTry an incident drill

Anonymous 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.

Keep learning

  1. 01Sed config previewPreview config text replacement as a script step.Practice
  2. 02Cut in scriptsExtract account fields for script-style checks.Practice
  3. 03Normalize textNormalize labels before comparing output.Practice