Coding/Learn/bash/bash tar archives
Bash Shell & CLI Automation Complete Course
01.What Bash Is & Shell Architecture
02.Terminal and Shell Basics
03.Running Commands & PATH Resolution
04.Command Structure: Options, Flags & Arguments
05.Getting Help with Commands: man, info & --help
06.Basic Filesystem Navigation & Directory Hierarchy
07.Listing Files with ls & Options
08.Changing Directories with cd
09.Current Directory: pwd & $PWD Variable
10.Creating Files: touch, Redirection & Here-Docs
11.Creating Directories with mkdir & Nested Parents
12.Copying Files and Directories with cp
13.Moving and Renaming Files with mv
14.Removing Files and Directories with rm & rmdir
15.Viewing File Contents: cat, less, more, head & tail
16.Command Aliases: alias, unalias & Persistence
17.Searching Text with grep & ripgrep
18.Pattern Matching: Regex & Extended Globs
19.Processing Columns & Structured Data with awk
20.Editing Text Streams with sed
21.Extracting Sections with cut, paste & tr
22.Sorting and Deduplication with sort & uniq
23.Viewing Beginning & End: head, tail & wc
24.Understanding Linux Processes & PID Lifecycle
25.Process Monitoring: top, htop & Background Jobs
26.Monitoring Disk Space with df
27.Directory Size Analysis with du & ncdu
28.Monitoring Memory Usage with free & /proc/meminfo
29.Terminating Processes: kill, killall, pkill & Signals
30.System Uptime, Load & Reboot History
31.Testing Connectivity: ping, nc, traceroute & nslookup
32.Making HTTP Requests with curl
33.Downloading Files with wget & curl -O
34.Remote SSH Connections: ssh, Keys & Config
35.Secure File Transfer with scp & sftp
36.File Synchronization with rsync
37.Creating and Managing ZIP Files
38.Extracting Archives: unzip & Safe Decompression
39.TAR Archives: Tape Archive Basics (tar -cvf, -tvf, -xvf)
40.Creating and Extracting Compressed Files (.tar.gz, .tar.bz2, .tar.xz)
41.Users and Groups: /etc/passwd, /etc/group & id
42.File Ownership: User Owner, Group Owner & Inodes
43.Read, Write & Execute Permissions: Files vs Directories
44.Changing Permissions with chmod: Symbolic & Octal Modes
45.Changing Ownership with chown
46.Changing Groups with chgrp & SetGID Inheritance
47.Script Structure & Strict Mode (set -euo pipefail)
48.The Shebang (#!) & Interpreter Portability
49.Variables: Declaration, Scope & Parameter Expansion
50.Data Types, Typeset & Declare Attributes
51.Operators: Arithmetic, String & Logical Operators
52.Handling User Input: read, Prompts & Secret Masking
53.Conditional Branching: if, elif, else & case Statements
54.Loops: for, while, until & Loop Control (break, continue)
55.Functions: Declarations, Local Scope & Return Values
56.Arrays: Indexed Arrays, Associative Maps & Slicing
57.Exit Codes ($?), Error Handling & Custom Exits
58.Scheduling with Cron & Crontab Automation
59.Combining Commands: Semicolons (;), &&, || & Subshells
60.Pipes (|), Pipefail & Process Pipelines
61.I/O Redirection: >, >>, 2>, 2>&1, &>, /dev/null & Here-Strings
62.Environment Variables: export, env, printenv & .env Loading
63.Command Substitution: $(command) vs Legacy Backticks
64.Basic Automation: Batch Processing & Lockfiles
65.Small Real-World Scripts: Health Checkers & Backup Utilities
66.Comprehensive Bash Exercises: Pipeline & Automation Challenges
67.Core Knowledge Quiz & Conceptual Review
68.Capstone Mini-Project: Automated Backup & Health Dispatcher
69.Course Completion & Verified Certificate
Course Certificate0%

Complete all lessons to earn

LearnTAR Archives: Tape Archive Basics (tar -cvf, -tvf, -xvf)
39 / 69 0%
Lesson 39 of 69
5 mins read

TAR Archives: Tape Archive Basics (tar -cvf, -tvf, -xvf)

PreviousNext Lesson
In Plain English

`tar` (Tape ARchive) was originally developed in Unix to write sequential file streams to magnetic tape drives. Today, it is the universal standard for bundling POSIX files, permissions, timestamps, and symlinks into a single `.tar` archive.

The Mental Model

"`tar` is like a shipping container: it packs hundreds of irregular boxes into a single standard metal container. (By itself, `tar` only bundles files; compression is added via gzip/bzip2/xz)."

Deep Dive: How It Works

Four Fundamental Modes: `-c` (create archive), `-x` (extract archive), `-t` (table of contents / list), `-r` (append files to archive).

The File Flag `-f`: Specifies the target archive filename. `-f` must always immediately precede the archive filename.

Verbose Mode `-v`: Displays filenames as they are processed.

Syntax Blueprint

tar -cvf archive.tar /path/to/source/  # Create archive
tar -tvf archive.tar                  # List contents
tar -xvf archive.tar -C /target/dir/  # Extract to directory

Use tar -cvf to create and tar -xvf with -C to extract into a target folder.

PointCore Rules to Remember

Point star
Preserves POSIX Attributes: Preserves exact Unix user UIDs, group GIDs, permissions, and symlink targets.
Point star
The -C Flag: Changes directory before performing extraction or archiving.
Point star
No Compression by Default: Plain `.tar` files bundle files without reducing byte size.

Common Beginner Traps & How to Fix Them

Mistake:Omitting the `-f` flag (e.g. `tar -cv archive.tar`).

Why it happens: Without -f, legacy tar attempts to write to a default magnetic tape drive device (/dev/rmt0).

How to fix: Always include `-f` followed by the filename: `tar -cvf name.tar`.

Pro Tip: Remember the mnemonic: `tar -czvf` (Create Zip Verbose File) and `tar -xzvf` (eXtract Zip Verbose File).

Live Interactive Example

Hit Run Code to see it live
Creating and Extracting a Plain TAR Archive
Git 2.45 / CLI
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Output Console
Click "Run Code" to view the rendered output.
How it works: tar -cf created the bundle and tar -xf extracted it into dst/.

Your Turn: Micro Challenge

No pressure! Edit the starter code below and test your solution with instant feedback.

Micro Exercise

List TAR Archive Contents with tar -tf

  • PointCreate a file `/tmp/t_test.txt` and package it into `/tmp/t_archive.tar`.
  • PointList contents with `tar -tf /tmp/t_archive.tar`.
  • PointClean up.
1
2
3
4
5
6
Sandbox Output
Click "Run & Check" to test your solution.

Finished reading and practicing?

Mark this lesson as completed to update your course progress.

PreviousNext Lesson
Overview100 SheetLearnCertificates