MarzleyTech Learn

Home / Learn / Linux command line

Linux command line: free course

The terminal skills every developer, server admin and network engineer needs: files, permissions, processes, packages, SSH and scripts.

12 lessons · free · no account needed · code examples, practice questions and videos

Start lesson 1 Open the interactive course Printable course notes

Lessons

  1. 1 Why Linux and the terminal: what Linux is, who uses it, distributions and how to start practising
  2. 2 Navigating and managing files: the Linux file system, paths, ls, cd, mkdir, cp, mv, rm, find and wildcards
  3. 3 Viewing, searching and editing text files (cat, less, grep, nano)
  4. 4 Pipes and redirection: combining commands
  5. 5 File permissions: reading rwx, chmod (symbolic and numeric), chown, umask and special permissions
  6. 6 Users, groups and sudo
  7. 7 Processes and installing software: ps, top, kill, jobs, apt, snap and keeping a system updated
  8. 8 Services, scheduled jobs (cron) and logs
  9. 9 Archives, disks and network tools: tar, zip, df, du, mount, curl, wget, ip and ss
  10. 10 SSH and managing a server: connecting, keys, copying files, config, hardening and firewalls
  11. 11 Bash scripting: variables, input, conditions, loops, functions, error handling and real automation scripts
  12. 12 Project: set up a Linux web server from scratch (Nginx, PHP, MySQL, HTTPS, backups)