How to display files and directories using ‘ls’

The ‘ls’ (list) command in Linux is an indispensable utility, offering users a simple yet effective way to display files and directories within the file system.

Renowned for its straightforwardness and adaptability, ‘ls’ is a fundamental command in various file management scenarios.

Understanding the Basics

At its core, the ‘ls’ command, when executed without any options, presents a list of files and directories in the current working directory.

$ ls
Output Example:
Documents  Music  Pictures  Videos

This basic command yields a straightforward display of file and directory names within the present directory.

Enhancing Details with ‘-l’

For a more comprehensive view encompassing detailed attributes, employ the ‘-l’ (long listing) option.

$ ls -l
Output Example:
total 16
-rw-rw-r-- 1 user group 1024 Jan 1 08:30 file1.txt
-rw-r--r-- 1 user group 512  Jan 1 08:30 file2.txt
drwxrwxr-x 2 user group 4096 Jan 1 08:30 directory1

The output from ‘-l’ includes:

  • File Type: First character (e.g., ‘-‘ for files, ‘d’ for directories).
  • Permissions: Access rights for user, group, and others.
  • Link Count: Number of hard links to the item.
  • Owner: User owning the file.
  • Group: Group ownership of the file.
  • Size: File size in bytes.
  • Modification Timestamp: Date and time of last modification.

Customizing Output Format

‘ls’ offers several formatting options for enhanced readability and organization:

  • Column View: Use ‘-C’ for a columnar display.
    $ ls -C
    Output Example:
    Documents Music Pictures Videos     
  • Sorting: Apply ‘-S’ followed by a sorting criterion, such as ‘size’, ‘time’, or ‘name’.
    $ ls -S size
    Output Example:

Streamlining File Display

For specific file or directory listings, utilize these filtering techniques:

  • Wildcards: Use ‘*’ for multiple characters and ‘?’ for single characters.
    $ ls *.txt
    Output Example:
  • Regular Expressions: Match filenames with complex patterns.
    $ ls [A-Z]*
    Output Example:

Exploring Advanced Options

‘ls’ boasts a variety of additional functionalities for diverse needs:

  • ‘-a’: Include hidden files in the listing.
  • ‘-d’: List directories only, excluding their contents.
  • ‘-R’: Recursive listing of subdirectories.
  • ‘-h’: Show file sizes in a more readable format (KB, MB, GB).
  • ‘–help’: Access the command’s help manual.


The ‘ls’ command stands as a cornerstone for file system exploration in Linux. Its flexibility and user-friendliness make it a powerful ally in file and directory management. Grasping its fundamental operations and delving into its assorted options empower users to efficiently list, categorize, filter, and manage files in the Linux terminal environment.


Leave a Reply

Your email address will not be published. Required fields are marked *