Today, I’ll be sharing with You 20 commands
that will allow you to get a power-packed experience out of Linux. Linux desktops come
with evolved desktop environments now and there’s less need than ever to use the terminal,
but the terminal is still the most powerful interface for Linux. Cybersecurity, hacking,
forensics, and other forms of advanced computing require that you have a sound knowledge of
Linux commands. Terminal opens up a whole new world of infinite possibilities.
During my earlier days, I always refrained from using the terminal. I loved the GUI.
But later on as I started using the terminal more often, my knowledge grew and I started
enjoying Linux in a way I never did before. The terminal is where you see the real power
of Linux. The terminal allows you to do things that are not even possible with a graphical
interface. In this video, we’ll be going through 20 commands
that every Linux user must know and… How to use these commands in real-life situations.
This is a beginner-friendly video so it will also help you get started with the terminal
if Your new to all this. This is Linux Tex, let’s do this.
Starting off, we have list on number 20. ls or list is a simple but a very useful command
that displays the content of a particular folder or directory, but that’s not all, ls
can be used to get advanced info such as to check if your friend changed anything in your
personal folders. Open up a terminal and type in ls and hit
enter. you can see that the contents of your home directory are displayed here. You can
open a terminal in some other location and try out the same command.
You can see hidden files and folders, that are not visible in the file explorer by typing
in ls space -a. ls space -c will sort and displays folders
in an order in which they were modified, particularly useful when you lend your laptop. If you play
around with Linux, knowing how to use this command will be very useful in case you break
something and the graphical interface fails to start.
We need a way to navigate around different folders just like we are doing here in the
file manager. For this, we will be using the cd command which of course stands for change
directory. Right into it, type cd and type in the name of the folder you want to open.
Type in the first few letters and press the tab button to autofill the entire name. Hit
enter. To move out of a folder back to a level up,
type in cd, leave a space and type in two dots and hit enter.
There are two ways of using the cd command, You can either use the relative addressing,
which is the above method where you type in where you want to go, from where you are.
Or You can type in the full address of a location directly from root. This kind of addressing
begins with a slash and then you type in where exactly a particular folder is. This is known
as absolute addressing. It’s like the postal address whereas the first one is where you’re
helping someone get to point from where you are.
Make sure to use the tab button to autofill the file or folder names.
Next up, we’ll be creating a directory or a folder. Browse to the location where you
want to create a folder. Then open up a terminal and type in mkdir space and the name of the
folder you want. Hit enter. You can see that a new folder or directory is created here.
To delete a folder, we are using rmdir followed by the folder name. This command is rather
limited and it deletes only completely empty directories. To delete directories with all
their subdirectories and files use rm space -rf space and the directory name you want
to delete. So yeah, normally, to delete stuff, you can use rm -rf. Just be careful with this
command though. Absolute address is like the postal address
of a directory, it’s unique and you can get to it from anywhere. It also tells you where
exactly the terminal is open in the file system. To see the absolute address of the working
directory or the folder, type in pwd, which stands for print working directory. It’s a
simple and informative command. Everything comes with a manual. So do Linux
commands. Linux commands are extremely malleable. What
I mean by that is, you can use these commands in many ways, and this allows you to customize
commands to suit the need at hand. man command opens up these manuals. Type in
man and then the command name. You have a brief description, what the command
does, how to use the command and various options that the particular command supports.
When You run some commands in the terminal, the screen real estate starts filling up with
data and it can all get jam-packed with text here. So to clear all the mess away, you can
use the clear command. Type in clear. Hit enter. That’s easy to remember.
Next up, we’ll be seeing how to copy a file from one directory to another. This is very
important because when dealing with operating system files, you need to use this command
itself as copy-pasting protected files using the file manager will not be permitted.
The cp command copies and pastes files and folders. To copy a file, open a terminal in
the folder where the file that you want to copy is, then type cp, space and put in the
name of the file you want to copy. You can even use absolute addressing, then leave a
space and type in the location you want to the file to be copied to. Hit enter.
To copy a folder, you follow the same structure, but you add -avr after cp and before the folder
name you want to copy. cp command is of great use when you’re repairing
or configuring your Linux computer. To move files, we use mv command. It encompasses
both cut and paste. Its usage is as follows, type mv in a terminal, leave a space and type
in the name of the file you want to move. Then leave a space and put in the destination
of the file. You can see the file being moved here, as soon as you hit enter. You can use
either absolute addressing or just the relative addressing.
You can even move all the contents of a directory using this command.
cat command displays the content of a text file, right then and there, in the terminal
itself. It’s a much faster and safer way of opening text files for read-only purposes.
Not many days ago, I was trying to repair my server configuration file by comparing
it side by side with the original backup, both opened in the Gedit text editor. And
I edited the original backup by mistake and saved it. That was 3 hours of headache I pulled
on myself. So using the cat command, you can quickly
peek into text files without accidentally altering them. Just type in cat followed by
the file you want to open. Cat command can also create, edit and do so
much more with text files. Using cat command, if you open a small text
file, that’s ok. But if you open a large file, with more text, everything is going to be
dumped on the terminal in one go. This is not ok for humans. Humans need larger text
data to be presented in smaller chunks, in a scrollable fashion.
So we use the less command. Type in the cat command, after the command put in a pipeline,
which is used to combine two commands together and type in less and hit enter.
Use the arrow keys to scroll, then you can press Q to exit the reader mode. The terminal
too remains clean and organized by using the less command. Less is not limited to be used
with just cat, but it can be used with any command where you expect to get a large amount
of data back on your terminal. grep is a very powerful pattern searcher command
available in Linux. So it’s basic function is to search for a word or string in a file.
But various options can be used with grep to make it more suited for particular problems
at hand like searching for case sensitive patterns, searching for, say… 10th occurrence
of a word in a file. grep can also search entire folders, containing any number of text
files for a word in a single command. I highly suggest playing around with this command if
you want to get into Linux shell scripting. So for basic usage, open a terminal in the
file location, type in grep, the word you want to search for, space and the name of
the file, enter. Here you go. This is just the basic usage, grep can be customized extensively
using options. The history command chronologically lists
out all the commands that have been run on the terminal. Rather self-explanatory. Isn’t
it. A neat trick to remember, You can just note
down or remember the command numbers from here, and you can run that command again by
typing in an exclamation mark, followed by the command number. The numbers don’t change
so these can be long term shortcuts too. This works without running the history command
too if you can remember the number. To clear the history, just run history -c.
ps stands for process status and this command gives you an overview of all the processes
running on your pc and information about them. The command is quite useful, especially if
you have an interest in the working of Linux based operating systems.
ps has many options, the one that gives you a detailed yet comprehendible amount of info
on running processes is ps space -aux. This throws a large list at you. So use it with
the less command we saw earlier. You can see the owner of the process. Then
we have the process identification number or the PID. This number is unique for a process
and has a significance. We’ll see more about it later on.
Then we have CPU and memory in percentage. Whenever your pc is lagging or unresponsive,
you can quickly run this command and find out which application is causing the lag by
noticing an unusually high amount of CPU or RAM consumption here. Then we can choose to
kill the process. Quick tip. Run top instead of ps to get an
interactive status of processes in descending order based on CPU usage.
Once we’ve identified the culprit process that is causing system unresponsiveness by
using up too much CPU or memory, we can kill it using the kill command. I know, not so
subtle. Now consider the Gedit text editor is giving
me an application not responding message, then I open up a terminal and get the PID
of Gedit as shown in the last section, then I copy the PID and use it to kill Gedit. Type
in kill space and paste the PID. Enter. Be careful with this command as you might
lose unsaved work if you kill some applications. This is not the same as closing an application,
but a strictly aggressive close by the operating system.
Passwd is a command that you can use to change your PC password. It also guides you to create
a password that is secure enough by checking your password and giving you inputs regarding
if you need to make it more secure. It outright rejects simple, commonly used passwords and
even cross-checks if your new password is, in any way similar to the passwords you have
used earlier. All you need to do is type is passwd and run
it. Follow through. Only passwords that are strong will be accepted. You can close the
terminal to retain the old password. To shut down your computer through the terminal,
we use, well, the shutdown command and there are many advanced options you can use here.
To shut down the computer after some time, useful when you have downloads, renderings
or any other processes running on the computer, you can use shutdown -t and time in seconds.
So here the computer shutdowns after 300 seconds, which is 5 minutes.
You can also type in the exact time you want the computer to shutdown by specifying the
time in 24 hours format. Shutdown now does an immediate shutdown. Shutdown
-r performs a reboot. You can even use the command reboot to restart the computer.
Linux is a very secure system which strictly enforces permissions to protect the users
as well itself. Yes, you heard me right. Linux protects itself. Anybody cannot just go ahead
and delete or modify files that are critical to the system.
But there are users, called super users or root, who have the absolute permission to
do anything on the system. See, Linux does not allow anybody to install stuff on your
computer when you’re away. But it allows you to install software. Doesn’t it.
To bypass the restrictions of Linux, you use sudo before the command you run. Using sudo,
you can install stuff, make changes to the OS and even delete system files.
It’s always a good practice to double-check the command you’re about to run and understand
what it does, whenever there’s a sudo in the command. Especially for Linux newcomers who
are copying commands from the internet. wget is an amazing command-line utility that
I always use. Basically wget is a file downloader. To download files using wget, all you need
to do it type in wget and then paste the URL of the file.
Wget is much better than the default downloader in your browser. It’s faster. Much more reliable
I mean the downloads rarely fail, even on spotty connections. Wget also provides pause
and continue support for most downloads which don’t allow pause and continue in browsers.
During downloads, if you close the terminal, the downloads pause and continue when you
rerun the command. Although this might not work if the server prohibits pausing the transfer.
Finally, we have apt. Apt is the package manager for Ubuntu and Ubuntu-based Linux distros.
Although it’s perfectly fine to use the software center, using the apt command gives you superior
control over package management. apt is a command that needs elevated privileges
so we use sudo before apt. Firstly we have sudo apt update, which fetches
information regarding latest updates to the software and such. It also contains info about
available software and their dependencies. Then we have sudo apt upgrade, which upgrades
all the software installed on the system to their newest versions.
You can install a software by sudo apt install and then the software name, say vlc.
We uninstall a software by sudo apt remove and the software name.
Then we have sudo apt autoremove, and what this does is, it removes all the packages
that are not needed, dependencies that are left over after a software uninstall and all
the garbage stuff that you don’t need. You can run this command every couple months or
so. Well, that’s it for today. If You liked this
video, do subscribe to my channel and also hit the bell icon. If You’d like too see more
intermediate and advanced Linux terminal stuff, do let me know in the comments below.
This is Linux Tex. See You in the next one.