Commands
Commands
Commands
You can check out the contents of the current directory using the ls command.
ls
Copied!
content_copy
You can view more details about the files, like ownership and permissions, by adding
the flag -l to the ls command.
ls -l
Copied!
content_copy
You can see hidden files in the current directory by passing flag a to the ls command.
ls -a
Copied!
content_copy
You can find out where you are in relation to the rest of the file system using
the pwd command.
pwd
Copied!
content_copy
You can navigate to different directories using the cd command.
cd /path/to/other/directory
Copied!
content_copy
You can check out the contents of a file using the cat command.
cat /path/to/file/file_name
Copied!
content_copy
For large input files, the less commands allows movement within the files. The syntax is
similar to that of the cat command, but you can move.
less /path/to/file/file_name
Copied!
content_copy
The command will provide you with a scrollable view of the content within the file, up to
the end of the file content. Scroll down using "Enter", and exit the view by pressing "q".
Directories (folders) in Linux are created using the mkdir command. The command
takes the directory name as the argument.
mkdir dir_name
Copied!
content_copy
Multiple directories can be supplied as arguments, and mkdir will create all of them.
Example 2
cd /home/user/Documents
Copied!
content_copy
student@ca721599e80e:~$ cd /home/user/Documents
student@ca721599e80e:/home/user/Documents$
Step 2: Show the contents of the file "colors" within the "Desktop" directory.
cat /home/user/Desktop/colors
Copied!
content_copy
red
blue
green
yellow
magenta
Step 3: Create the directories.
Create directories
Check my progress
Removing empty directories
rmdir dir_name
Copied!
content_copy
Multiple directory names can be passed as arguments, and rmdir will remove all of
them.
Example 2
Options
rmdir takes only one option, which tells it to remove parent directories if they're also
empty.
Let's take a look at an example of how to use the touch command. In the current
directory, we can create an empty file called "empty_file":
touch empty
Copied!
content_copy
The touch command can take the c option to prevent a new file from being created.
Options
The cp command is used to make a copy of one or more directories or files. The
command takes at least one source name and one target name. If the target is a file,
then the source must also be a file. A copy of the source will be made with the new
name supplied in target. If the target name isn't specified, a copy of source will be made
in the target directory under the same name. If a file with the target name already exists
in the target directory, it'll be replaced. If the target is an existing directory, then all
sources (one or more) will be copied into the target directory. If the target is a directory
that doesn't exist, then the source must also be a directory. A copy of the directory and
its contents will be made in target under the same name.
cp /home/user/source_file /home/user/duplicates/target_file
Copied!
content_copy
The duplicates directory now contains a copy of the original file.
mv
The move command is used to move one or more files or directories into a different
location, or rename them to a new name. You're required to pass at least one source
and target file names or directories. The mv command follows the rules for existing or
non-existing directories or files, as does cp.
Example 2
Move the file "source_file" in /home/user/ to the directory "moved_files" and give it the
name "target_name".
mv /home/user/source_file /home/user/moved_files/target_file
Copied!
content_copy
The original directory doesn't contain the file now. It's been moved to the new directory
"moved_files".
rm
The rm command is used to remove one or more files. You need to supply at least one
argument to remove.
Example 3
We can remove the duplicate file we created in the directory "duplicates" using rm
rm /home/user/duplicates/target_file
Copied!
content_copy
Let's see how to copy, move, and rename files by going through a few examples.
In the directory /home/user/Pictures, we'll take all the hidden files and move them into
the directory /home/user/Documents/Hidden
Step 1: Change into the Pictures directory.
cd /home/user/Pictures
Copied!
content_copy
student@ca721599e80e:~$ cd /home/user/Pictures
Step 2: Show the directory contents, including hidden files.
ls -a
Copied!
content_copy
student@ca721599e80e:~$ cd /home/user/Pictures
student@ca721599e80e:/home/user/Pictures$ ls -a
. .. .apple .banana .broccoli .milk chocolate egg
Step 3: Move the hidden files into the target directory.
cd /home/user/Pictures
Copied!
content_copy
mv /home/user/Images/Vacation.JPG .
Copied!
content_copy
student@ca721599e80e:~$ cd /home/user/Pictures
student@ca721599e80e:/home/user/Pictures$ mv
/home/user/Images/Vacation.JPG .student@ca721599e80e:/home/user/Pictures$
ls
'Europe Pictures' Vacation.JPG chocolate egg
Click Check my progress to verify the objective.
Best_of_the_90s
80s_jams
Classical
Rock (folder)
Step 1: Navigate to the Music folder.
cd /home/user/Music
Copied!
content_copy
Step 2: Remove files.
rmdir Rock
Copied!
content_copy
To remove a directory with content, the rm command is used instead of rmdir. The
option -r tells the command to remove the directory, along with its content recursively.
rm -r non_empty_dir
Copied!
content_copy
Searching in files
grep
grep is a super powerful Linux command used to search through files for the occurrence
of a string of characters that matches a specified pattern. We can use the command in
combination with a bunch of different options and flags for efficient searching.
mv /home/user/Downloads/Iceland /home/user/Downloads/Japan
/home/user/Documents
Copied!
content_copy
Click Check my progress to verify the objective.
Lots of Linux distributions come with pre-installed text editors. The most popular ones
are vi and nano, which will be included in nearly every distribution. Other text editors,
like Emacs and Gedit, might also be present. In this lab, we'll modify files using the
Nano editor.
You can use the nano command to open the Nano editor and modify an existing file, or
create a new one. To edit an existing file, we'll first start with opening it.
nano /path/to/existing/file
Copied!
content_copy
The command will open the file in the terminal and display the current file contents. To
modify, you can edit the content in the terminal, just like a normal editor. The editor is
managed using various shortcuts.
CTRL-O
Copied!
content_copy
Once editing is done, we can close and exit the program using Ctrl+X
CTRL-
Copied!
content_copy
NB: At any point in using the editor, you can get help using Ctrl+G
CTRL-G
Copied!
content_copy
To exit help mode, use Ctrl+X
CTRL-X
Copied!
content_copy
Alright, now let's practice how to edit files using nano.
touch editor_test.txt
Copied!
content_copy
Open the file with the Nano editor.
nano editor_test.txt
Copied!
content_copy
Knock Knock
Who's there ?
java.
:-)
CTRL-O
Copied!
content_copy
Knock Knock
Who's there ?
java.
:-)
CTRL-X
Copied!
content_copy
That's it! You've successfully created and modified a file.
Conclusion
In this lab, we've gone through the basics of creating, modifying, copying, and removing
files and folders in Linux. As always, you can learn more about each of the commands
we've covered by using the man command. Make sure to practice these commands so
that you get comfortable using them.