File System Navigation Commands in Linux
Last Updated :
31 May, 2025
Linux offers an alternative to the usual Windows and icons. The terminal might seem different at first, relying on text commands instead of a mouse. Unlike Windows, which relies heavily on a graphical interface, Linux gives you direct access to the core of your computer through text-based commands.
At the heart of Linux is its hierarchical file system, starting from the root directory /
. Unlike Windows, which uses drive letters like C:
or D:
, Linux organizes all files and directories under this single root, creating a unified structure. This design allows for consistent navigation and management of files across the system.

In this article, you’ll be going through a demonstration of Navigation Commands in Linux which will help in quickly navigating in the Linux file system. Let’s go through them, but before that have a short idea of the difference between Linux and Windows file systems.
Difference between Windows and Linux File System
Windows and Linux differ significantly in how they organize, access, and manage files within their operating systems.
Feature | Windows | Linux |
---|
Structure | Drives (C:, D:, etc.) and folders | Single, unified tree structure starting from root (/) |
---|
Case Sensitivity | Not case-sensitive | Case-sensitive |
---|
File Permissions | Simpler (user accounts) | More granular control (user, group, others) |
---|
File System | Primarily NTFS | Ext4 (most common) FAT32, NTFS (sometimes) |
---|
Overall Remarks | User-friendly, familiar interface | Flexible, powerful for advanced users |
---|
Commonly Used File System Navigation Commands
These commands help you navigate, organize, and manage files and directories within the Linux file system.
Linux Commands | Functions |
---|
pwd | Shows the current location. |
---|
ls | List files and folders. |
---|
cd | Change working directory. |
---|
mkdir | Used to create new folder. |
---|
rmdir | Remove an empty folder. |
---|
cp | Creating a copy of a file in a new location. |
---|
mv | Relocate files from one folder to another. |
---|
1. pwd (print working directory)
The pwd command shows the current location in the system. It tells you which folder you're currently in.
pwd

Observation
The current directory is /home/kali/Templates
2. ls (list files and directories)
The ls command is used to list the files and directories in the current directory. It provides an overview of what is inside a folder.
ls

Observation
All the files and folders present inside the current folder is listed.
3. cd (change directory)
The cd command is used to move between folders. You can tell it exactly which folder you want to go to (like giving it an address), or you can use shortcuts to get around. Let's look into both the methods.
Moving around nearby folder
If you want to move into a folder that's within the one you're already in, you can just use its name. For instance, if you're in your home directory and want to reach downloads.
cd [directory name]
cd Downloads

Observation
A. checking the current directory
B. using cd command to change the directory
C. observe the updated directory
Going to a Specific Folder
Imagine telling someone the full address to find your house. Similarly, you can do the same by giving the complete path to the folder. For example, you want to access the documents folder inside the username folder.
cd [directory path]
cd /home/username/documents

Observation
Directory StructureConsidering the above directory structure, the active directory was changed from Downloads to Documents by traversing from the home directory.
4. mkdir (make directory)
The mkdir command, an abbreviation for "make directory," allows you to create new folders within your existing file system. This provides a structured way to categorize and store your files.
mkdir [directory name]
mkdir GeeksForGeeks

Observation
A. User tried to create a new folder named GeeksForGeeks
B. changed the directory to newly created directory
C. The active directory is updated
5. rmdir (remove empty directory)
The rmdir command, short for "remove directory," enables you to delete empty directories. This is useful for cleaning up unused folders and maintaining a streamlined file system.
The syntax for rmdir is:
rmdir [directory_name]
Note: rmdir can only delete empty directories.

Observation
Observe that the empty directory was removed.
6. cp (copy)
The cp command acts like a duplicator, creating a copy of a file in a new location.
cp [source_file] [location]
For instance, to copy "image.jpg" from Downloads to Pictures while keeping the original, you'd use
cp ~/Downloads/image.jpg ~/Pictures

Obervation
A. Executing the copying command.
B. Changing the current active directory for checking.
C. Using the list command, we can observe that the image.jpg was copied.
7. mv (move)
The mv command is like a handy mover, allowing you to relocate files from one folder to another.
mv [source_file] [location]
For instance, to move a file named "image.jpg" from your Downloads folder to Documents, you'd use
mv ~/Downloads/image.jpg ~/Pictures

Observation
A. Executing the mv (move) command.
B. Changing the current active directory.
C. After executing ls (list) command, we can observe that the file has been transferred.
Additional Shortcut Tips
These quick symbols help you navigate the Linux file system more efficiently.
Serial No | Symbol | Symbol Name | Function |
---|
1 | ~ | tilde | shortcut to your home base |
---|
2 | . | dot | the folder you're in right now |
---|
3 | .. | double dot | the folder one level above |
---|
1. ~ (tilde) - shortcut in Linux
This symbol is like a shortcut to your home base. No matter where you are, typing tilde will always bring you back to your home folder.
cd ~

The active directory was updated to home.
2. . (dot) - shortcut in Linux
This simply means the folder you're in right now. If you're already inside a folder and want to work with something there, you can use the dot symbol.
3. .. (double dot) - shortcut in Linux
This means the folder one level above the one you're in, like going up a floor in a building. If you're deep inside folders and want to go back a step, this will take you to the bigger folder that contains the one you're in.
cd ..

Observation
A. The current directory is visible, and we execute the command.
B. The active directory is updated.
4. tree - seeing the bigger picture in Linux
This command isn't exactly for moving around, but it helps you see all the folders at once. It shows how all the folders are connected, like a family tree, so you can understand the bigger picture.
tree

All the files and folders of the active directory is listed.
Conclusion
The Linux terminal might seem daunting at first, but with a handful of basic commands, you've unlocked the ability to navigate the file system with ease. By using pwd to check your location, cd to move around, and ~, ., and .. for shortcuts, you can efficiently access files and folders. Remember, the tree command provides a helpful visual map of the directory structure.
As you gain confidence, there's a whole world of commands waiting to be explored. You can learn to copy, move, and delete files, create new directories, and even edit text files directly from the terminal. The possibilities are vast!
Do check out GeeksforGeeks Linux/Unix Tutorial
Similar Reads
How to Move File in Linux | mv Command In UNIX-based operating systems like Linux and macOS, `mv` stands for "move". The mv command is a UNIX command for renaming and moving files and directories within a filesystem. Although desktop operating systems have graphical user interfaces for file operations, calling mv in the terminal, usually
7 min read
whatis Command in Linux with Examples whatis command in Linux is used to get a one-line manual page description. In Linux, each manual page has some sort of description within it. So, this command search for the manual pages names and show the manual page description of the specified filename or argument. Syntax of the `whatis` command
5 min read
grep command in Unix/Linux The grep command is one of the most useful tools in Linux and Unix systems. It is used to search for specific words, phrases, or patterns inside text files, and shows the matching lines on your screen. Syntax of grep Command in Unix/LinuxThe basic syntax of the `grep` command is as follows:grep [opt
6 min read
Basic Shell Commands in Linux: Complete List Anyone using Linux should become an expert in the essential shell commands, as they form the backbone of working with the Linux terminal. These commands enable you to navigate the system, manage files, handle processes, and configure settings effectively.The Linux shell serves as an interface for us
5 min read
ln command in Linux with Examples The 'ln' command in Linux is a powerful utility that allows you to create links between files. These links can either be hard links or soft (symbolic) links. If you're unfamiliar with these concepts, check out our detailed guide on Hard and Soft Links in Linux to understand their differences, use ca
3 min read
readlink command in Linux with Examples The 'readlink' command in Linux is a valuable tool used to print resolved symbolic links or canonical file names. In simpler terms, when dealing with symbolic links and you need to know the actual path they represent, the 'readlink' command reveals the path of the symbolic link. This command is part
3 min read