Unix ops lab

Text and logs

Read files, search logs, and use text pipelines.

Track progress 0/360 lessons 0/17 missions 12 courses
0%
Continue View profile
01 Text and logs Viewing text

Open text, search logs, and inspect output without editing files.

Beginner 9 minutes · cat, head, tail, grep, stat
02 Text and logs Grep practice

Search literal text in logs and practice case-insensitive matching.

Beginner 8 minutes · grep, cat
03 Text and logs Log triage

Inspect access, error, auth, and service logs in a cautious order.

Beginner 9 minutes · tail, journalctl, grep
04 Text and logs Text pipelines

Use safe simulated pipes to count, sort, and deduplicate text output.

Beginner 9 minutes · echo, sort, uniq, wc
05 Text and logs Paging logs

Use less, head, and tail to read logs in chunks.

Core 8 minutes · less, head, tail
06 Text and logs Case-insensitive search

Find text regardless of capitalization.

Core 7 minutes · grep, wc
07 Text and logs Pipeline counts

Filter logs through safe text pipelines.

Core 8 minutes · cat, grep, wc, journalctl
08 Text and logs Port text review

Read, sort, and count a training port list.

Core Checkpoint 7 minutes · sort, uniq, wc, tail
09 Text and logs Config text compare

Use grep and diff to compare two config snapshots.

Core 8 minutes · diff, grep
10 Text and logs Journal windows

Read only the last few simulated journal lines.

Core 7 minutes · journalctl, tail
11 Text and logs Kernel log basics

Inspect simulated kernel messages for mount and network clues.

Core 7 minutes · head, grep, tail
12 Text and logs Package log basics

Inspect simulated package activity without installing anything.

Core 7 minutes · grep, tail, wc
13 Text and logs Access log review

Filter training HTTP access lines for status and method clues.

Core 7 minutes · grep, wc, tail
14 Text and logs Error patterns

Search different logs for warning and denied patterns.

Core 7 minutes · grep, journalctl
15 Text and logs Redaction notes

Write a safe note that marks sensitive data as redacted.

Core 7 minutes · echo, grep, cat
16 Text and logs Sed substitution

Preview text replacement without editing a log.

Core 8 minutes · sed, grep
17 Text and logs Awk column extraction

Use awk to pull simple columns from logs.

Core 8 minutes · awk, journalctl
18 Text and logs Cut field selection

Extract colon-delimited identity fields.

Core 8 minutes · cut, cat
19 Text and logs Text case transforms

Transform piped text with tr.

Core 8 minutes · printf, tr
20 Text and logs Capture with tee

Capture pipeline output to a lab note.

Advanced 8 minutes · grep, tee, cat
21 Text and logs Xargs bridge

Turn text into safe command arguments.

Advanced 8 minutes · printf, xargs, basename
22 Text and logs Text pipeline checkpoint

Combine search, field extraction, transform, and counting.

Capstone Checkpoint 8 minutes · grep, awk, tr, wc
23 Text and logs Logrotate config review

Read log rotation settings as text.

Admin 8 minutes · cat, grep, sed
24 Text and logs Logrotate dry run

Dry-run log rotation without moving files.

Admin 8 minutes · logrotate, find
25 Text and logs Journal time window

Narrow journal output before reading a whole service history.

Admin 8 minutes · journalctl, grep
26 Text and logs Evidence bundle

Capture a focused evidence bundle into lab notes.

Admin 8 minutes · grep, tee, cat
27 Text and logs Sed window preview

Preview a small text window before searching a large file.

Admin 8 minutes · sed, grep
28 Text and logs Awk service summary

Extract service names from a baseline report.

Admin 8 minutes · awk, cut
29 Text and logs Access log triage

Search access logs for status and route signals.

Admin 8 minutes · grep, tail, wc
30 Text and logs Retention evidence review

Compare active and rotated logs before retention decisions.

Advanced 8 minutes · du, find, wc
31 Text and logs Numbered log reading

Add stable line numbers to a short authentication-log view.

Core 8 minutes · nl, head
32 Text and logs Sorted account diff

Use comm to separate shared and unique account names.

Core 8 minutes · comm, nl
33 Text and logs Journal line numbering

Number a narrowed service journal so evidence is easy to reference.

Admin 8 minutes · journalctl, nl
34 Text and logs Three-stage evidence pipeline

Search, number, and limit log evidence in one bounded pipeline.

Admin 8 minutes · grep, nl, head
35 Text and logs Config substitution preview

Preview a port substitution and compare it with the unchanged source.

Admin 8 minutes · sed, grep, nl
36 Text and logs Rotated access comparison

Compare active and rotated access logs before summarizing traffic.

Admin 8 minutes · diff, tail, nl
37 Text and logs Incident template numbering

Number a runbook template so collaborators can reference exact fields.

Admin Checkpoint 8 minutes · nl, grep, wc
38 Text and logs Text evidence bridge

Checkpoint numbered logs, sorted comparisons, and bounded pipelines.

Capstone Checkpoint 8 minutes · grep, nl, comm, wc
Command coverage

Commands you will practice here.

echo <text>

Print text or write lab notes with >.

printf <text>

Print formatted training text.

cat <file>

Print text file contents.

less <file>

Page through a file.

head|tail [-n N] <file>

Read the beginning or end of a file.

grep [-i] <text> <file>

Find literal text inside a file.

awk '{print $N}' <file>

Print a whitespace-delimited field.

sed s/old/new/ <file>

Preview simple text substitutions.

cut -d <char> -f <n>

Extract delimited fields from text.

tr a-z A-Z

Transform piped text case.

tee <file>

Write piped text to a lab file and keep it on screen.

xargs echo|basename

Turn piped words into safe command arguments.

wc [-l] <file>

Count lines, words, and characters.

sort|uniq

Practice simple text pipelines.

diff <left> <right>

Compare two lab text files.

find [path] [-name text]

Search lab filesystem paths.

nl [file]

Number lines from a file or supported text pipeline.

comm <left> <right>

Compare two sorted text files line by line.

basename|dirname <path>

Split paths into file and directory parts.

stat <path>

Show lab file details.

journalctl -u <service>

Read simulated service journal entries.

logrotate -d <config>

Dry-run a simulated log rotation config.