Learn How to Use ‘dir’ Command with Different Options and Arguments in Linux

This article shows some examples of using the dir command to list the contents of a directory. The dir command is not a commonly used command in Linux. Though it works more less like the ls command which most Linux users prefer to use. We’ll be discussing the dir command where we shall look at how to use different options and arguments.

dir Command Usage in Linux

dir Command Usage in Linux

The general syntax of the dir command is as follows.

# dir [OPTION] [FILE]
dir Command Syntax

dir Command Syntax

dir Command Usage with Examples

Simple output of the dir command

# dir /
dir Command Output

dir Command Output

Output of the dir command with the /etc directory file is as follows. As you can see from the output not all files in the /etc directory are listed.

# dir /etc
List /etc Directory

List /etc Directory

To list one file per line use -1 option as follows.

# dir
# dir -1
List Files per Line

List Files per Line

View all files in a directory including hidden files

To list all files in a directory including . (hidden) files, use the -a option. You can include the -l option to format output as a list.

# dir -a
# dir -al
List Hidden Files

List Hidden Files

Long List Hidden Files

Long List Hidden Files

View directory entries instead of content

When you need to list only directory entries instead of directory content, you can use the -d option. In the output below, the option -d lists entries for the /etc directory.

When you use -dl, it shows a long listing of the directory including owner, group owner, permissions.

# dir -d /etc
# dir -dl /etc
Long List /etc Directory

Long List /etc Directory

View index number of files

In case you want to view the index number of each file, use the option -i. From the output below, you can see that first column shows numbers. These numbers are called inodes which are sometimes referred to as index nodes or index numbers.

An inode in Linux systems is a data storage on a filesystem that stores information about a file except the filename and its actual data.

# dir -il
List Index Number of Files

List Index Number of Files

List files and their allocated sizes in blocks

You can view files sizes using the -s option. If you need to sort the files according to size, then use the -S option.

In this case you need to also use the -h option to view the files sizes in a human-readable format.

# dir -shl
List Files with Sizes

List Files with Sizes

In the output above, the first column shows the size of files in Kilobytes. The output below shows a sorted list of files according to their sizes by using the -S option.

# dir -ashlS /home/kone
Sort Files with Sizes

Sort Files with Sizes

You can also sort by modification time, with the file that has recently been modified appearing first on the list. This can be done using the -t option.

# dir -ashlt /home/kone
Sort Files by Modification Time

Sort Files by Modification Time

List files without owner or group owner

To list files without their owners, you have to use -g option which works like the -l option only that it does not print out the file owner. And to list files without group owner use the -G option as follows.

# dir -ahgG /home/kone
List Files without Owner

List Files without Owner

As you can notice from the output above that the name of the file owner and the group owner are not printed. You can as well view the author of a file by using the –author flag as follows.

# dir -al --author /home/kone
View Author of Files

View Author of Files

In the output above, the fifth column shows the name of the author of a file. The examples.desktop files is owned by user kone, belongs to group kili and it was authored by user kone.

List directories before other files

You may wish to view directories before all other files and this can be done by using the –group-directories-first flag as follows.

# dir -l --group-directories-first
List Group Directory Files

List Group Directory Files

When you observe the output above, you can see that all the directories are listed before the regular files. The letter d before the permissions indicates a directory and a indicates a regular file.

You can also view subdirectories recursively, meaning that you can list all other subdirectories in a directory using the -R option as follows.

# dir -R
List Directories Recursively

List Directories Recursively

In the above output, the (.) sign means the current directory and home directory of user Kone has three subdirectories that is Backup, dir and Docs.

The Backup subdirectory has two other subdirectories that is mariadb and mysql which have no subdirectories.

The dir subdirectory does not have any subdirectory. And the Docs subdirectory has two subdirectories namely Books and Tuts which do not have subdirectories.

View user and group IDs instead of names

To view user and group IDs, you need to use -n option. Let us observe the difference between the next two outputs.

Output without -n option.

# dir -l --author
List Files Without ID's

List Files Without ID’s

Output with -n option.

# dir -nl --author
List Files with ID's

List Files with ID’s

View entries separated by commas

This can be archived by using -m option.

# dir -am
List Entries by Comma

List Entries by Comma

To find help in using the dir command use –help flag and to view version details of dir use –version.


These are just examples of basic usage of the dir command, to use many other options see the manual entry for dir command on your system. In case you find any other interesting options or ways of using the dir command, lets us know by writing a comment. Hope you find this article useful.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

Aaron Kili

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide
The Complete Linux System Administrator Bundle
Become an Ethical Hacker Bonus Bundle

You may also like...

8 Responses

  1. Hemant Parmar says:

    Hi Aaron,

    In Linux system we have owner, group and other permission, What is this “author” thing?

    It is part of others or something else.

  2. kcdtv says:

    It seems to me that “ls” and “dir” are the same just that “ls” has enabled the colorization of the files according to their nature.

  3. Derek Broughton says:

    On Debian-based systems, at least, dir == ls

  4. Aaron Kili K says:

    Thanks for the addition. @Yoander

  5. Yoander says:

    If you want to view SELinux context then you must include -Z option (–context long option), ex: dir -lZ .

Got something to say? Join the discussion.

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.