Mastering the Linux Command Line: A Beginner’s Guide

Move beyond simple commands and discover powerful Linux tools that streamline your development process.
File System Navigation and Management
• ls – list directory
• cd – change directory
• pwd – present working directory/print working directory
• cp – copy files and directories
• mv – move or rename files and directories
• rm – remove files and directories
• touch – creates an empty file
• mkdir – create a directory
• rmdir – remove empty directory
File viewing and Editing
• cat – display the content without entering into the file
• more/less – view file content with pagination
• head – view first ten lines of a file
• tail – view the last ten lines of a file
• nano/vi/vim – text editors for modifying content
File Permissions
• chmod – change file permissions
• chown – change file owner and group
• umask – set default file permissions
Process Management
• ps – view active processes
• top – monitoring real time processes
• htop – interactive process viewer
• kill – terminate process by process id (PID)
• killall – terminate process by name
Networking Commands
• ping – check network connectivity
• ifconfig – show network interface
• ip – manage network interface
• netstat – view network connections and listening ports
• curl – transfer data to a server or from a server
• wget – downloads files from the web
• iptables – configure firewall rules
• traceroute – trace the path packets from computer to destination host
Disk Management
• df – show disk space and its usage
• du – show disk usage of files and directories
• lsblk – list information about block devices
• mount – mount a file system
• umount – unmount file system
System Monitoring and Performance
• free – show memory usage
• vmstat – display statistics of virtual memory
• iostat – show CPU and I/O statistics
Log Files and Monitoring
• grep – search for a specific pattern in a file
• find – search for files in a directory
• tail -f – continuously monitor log files in real time
Archiving and Compression
• tar – create or extract tar files
• gzip/unzip – compress and decompress files
• zip/unzip – create and extract zip files
User and Group Management
• useradd – create a new user
• usermod – modify a user account
• userdel – delete a user account
• groupadd – create a new group
• groupdel – delete a group
• passwd – change a user password
• id – show user information
• whoami – show current user
System Services
• systemctl – start, stop and manage services in systemd based systems
Automation and Scripting
• bash – command line shell
• sh – shell interpreter used to execute commands from terminal
• cron – schedule recurring tasks
• awk – search through text files by columns
Security Commands
• sudo – execute a command as a root user
• su – switch user
• ssh – securely connect to remote servers
• ssh-keygen – generate ssh key pairs
• chmod – change file permissions
• chroot – change root directory
Conclusion
Mastering these Linux commands empowers you to work more efficiently and take full control of your development environment. From file management to system monitoring, these tools are essential for developers, sysadmins, and power users alike. With practice, they become second nature and drastically improve your productivity. Whether you're debugging a server or automating tasks, Linux offers powerful capabilities at your fingertips. Start small, keep experimenting, and you'll unlock the true potential of the command line.
Stay Connected!
Stay Curious!
Subscribe to my newsletter
Read articles from P Sai Prudhvi Raj directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

P Sai Prudhvi Raj
P Sai Prudhvi Raj
Motivated and enthusiastic learner currently engaged in hands-on training in Full Stack Development. I am passionate about staying updated with the latest technology trends and am committed to honing my skills in real-world development environments. I am eager to gain expertise in DevOps technologies, including CI/CD, containerization, and cloud infrastructure, with a strong focus on automating workflows and enhancing development processes.