The output of the ls -l Command Explained
The ls command lists the specified directory's contents. It accepts a directory name as an argument. By default, it lists only content names. It does not provide any detail about them. If we need more information, we use the -l option. The -l option provides detailed information about the content, including content type, name, owner, permission, created and modified date, size, and location.
#ls -l
It formats the output in columns.

The first column shows the resource type. It uses a letter to indicate the resource type. The following table lists the resource type.
| Letter | Description |
| l | It is a symbolic link to another file or directory. |
| d | It is a directory. |
| - | It is a regular data file. |
| b | It is a block device such as a hard disk. |
| c | It is a character device such as a terminal. |
The second column shows a sequence of nine characters. These characters define the permission of the resource. A resource can have three types of permission: Read, Write, and Execute. Each permission type uses a letter. It uses the letter r for read, w for write, and x for execute permission.
Linux divides users into three groups: owner, group, and other. For each user type, it defines all three types of permission. To describe three types of permissions for three types of users, it uses 3 x 3 = 9 characters. The first three characters belong to the owner, the following three represent the group, and the last three belong to other users.
It uses a hyphen (-) instead of a letter to indicate no permission for a specific operation on the file. For example, if you see the letters rwxrw-r-- in this field, it means the owner can read (r), write (w), and execute (x) the file. The group users can read (r) and write (w) the file, but they cannot execute (-) the file. Other users can only read (r) the file. They cannot write (-) and execute (-) the file.
- The next column shows the number of links the resource has.
- The next column shows the name of the owner and group.
- The next column shows the file size in bytes.
- The next column shows the date and time when the file was last modified.
- The last column shows the name of the resource.
By default, it does not show the hidden files. If you want to view hidden files with regular files, use the -a option. A secret file starts with a dot.
#ls -la

By default, it displays the file size in bytes. If you want to view the file size in a human-friendly format, use the -h option with it.
#ls -lh

Conclusion
The ls command with the l option provides detailed information about the contents stored in the specified directory. The detailed information includes name, location, permission, owner, created and modified date, size, and type of the content. It uses default units to show the size. The -h option allows us to view it in the standard units. By default, the output does not include the hidden files. The -a option adds them.
Author Laxmi Goswami Updated on 2026-02-21