I'm new to Linux, although I'm comfortable with basic terminal commands such as cp, ls, cd, and mv. I'd like to move beyond the basics and understand Linux and Bash scripting in greater depth. I'm already reading a book about how Linux works, and I'd appreciate recommendations for tutorials, books, courses, or practical exercises that can help me build real skills.
4 Answers
The Bash Beginner’s Guide from The Linux Documentation Project is a solid starting point. LearnX in Y Minutes also gives you a quick overview of Bash syntax and common features. After that, write small scripts instead of only reading—automate file management, backups, or simple system checks.
For Linux administration, learn tools such as systemctl, ip, networkctl, kill, and pkill as you encounter real problems. You can also practice by configuring services, networking, backups, or your shell prompt. Type commands yourself and read what they do instead of blindly copying them, especially when using advice from automated tools.
A hands-on course like pwn.college can teach Linux and command-line skills through exercises. The Linux Upskill Challenge is another useful option for learning system administration. Try to complete practical projects on your own machine so you learn how commands fit together rather than memorizing them individually.
Pick a project that sounds fun and build it with Bash. For example, make a backup tool, log analyzer, menu-driven utility, or a basic web server. Bash is capable of a lot, but you’ll learn the most by looking up commands, reading their manual pages, and troubleshooting your own scripts. The tldr utility can provide shorter examples when full man pages feel overwhelming.

I’m currently using Arch with i3 and learning how to customize it. That has already taught me about partitioning, booting, and system configuration. I’ll look into the Bash guides and practical projects as well.