Linux is an operating system that is a common alternative to Microsoft’s Windows operating system mainly because it’s open source which makes it free and also because of it’s security potential. Its open source nature makes it a flexible platform on which to launch solutions for various use cases. Unfortunately many of these use cases are foreign to average computer users; Programmers on the other hand are forced to get acquainted with these use cases because of Linux’s widespread use by service providers, third party tools and the general programming community at large.
Linux operating systems come in different “flavors”, Ubuntu, Fedora, CentOS to mention a few. Commands for each of these flavors may vary slightly but they are largely similar. In this article I’ll be focusing on Ubuntu commands because it is considered the most popular Linux flavor out there. I have met a number of developers who are weary of the command line and so I have divided the basic commands into general categories to make things a little easier to follow.
Since there isn’t a GUI when it comes to terminals the only way to navigate is to type commands that change the directory that a user is in.
cd /directorypath – change your current directory to the “directorypath” indicated in the command.
pwd – display the path to the current directory.
find – search for files that match the word or pattern that follows the command
ls – list the contents of a directory
ls ls /var/www/html/ ls -l /var/www/html/
mkdir – create a new directory
mkdir newfolder mkdir /home/website/newfolder
chmod – change file permissions
sudo chmod 755 robots.txt sudo chmod -R 755 content
chown – change file ownership
sudo chown www-data:www-data config.php sudo chown -R root:root content
cp – copy file from one directory to another
cp /home/website/config.php /var/www/html/
mv – move file from one directory to another
mv /home/website/config.php /var/www/html/
rm – delete a file
ssh – remotely login to another remote terminal
passwd [username] – change a username’s password
su – switch user accounts
su - username
ping – sends a small data packet to the destination and requests a response. Mainly used for testing the connectivity of network terminals.
We’ll end there for now. I hope these basic commands and examples will help you take the plunge into the command line and maybe even motivate you enough to become a Linux guru in the future. Feel free to let me know in the comments if I left out some commands that Linux beginners would benefit from. Until the next post, Cheers.