In Linux Course and in real life works, we will work on files too much. So, we will use linux ls command very often. So, why we use linux ls command? What are Linux ls options? In this lesson, we will learn Linux ls options one by one.
Firstly, let’s answer the first question, why we use Linux ls command. We use ls command in Linux to list files. With different options, we can do this listing in different variations. In this lesson, we will talk about these options. In another lesson, we have talked about user listing in Linux . You can also check it.
You can use ls command without any parameter. When you use ls option without any parameter, you can list the files within the current directory. For example, if you are under root directory (/) and you use Linux ls command without any option, then you can list the files under root directory (/).
root@kali:/home/kali# ls
abc abc1 abc2 Desktop Documents Downloads EmptyXYZ hello.txt Music MyFolder Pictures ppp2.php ppp.php Public Templates Videos
To list the files under the current directory detailly, we use linux ls -l option. With linux ls -l option, all the files under the current directory are listed with their details. So, what are these file details. These are:
Type: File or Directory
Owner, Group, Everyone permissions
Creator User
Size
Create Date
File Name
root@kali:/home/kali# ls -l
total 44
-rw-r--r-- 1 kali kali 7 Jun 11 2021 abc
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc1
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc2
drwxr-xr-x 2 kali kali 4096 Aug 11 04:40 Desktop
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Documents
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Downloads
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 EmptyXYZ
-rw-r--r-- 1 kali kali 0 Dec 20 2021 hello.txt
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Music
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 MyFolder
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Pictures
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp2.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp.php
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Public
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Templates
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Videos
You can also watch the video of this Linux ls options lesson!
Linux ls hidden files: ls -a option
There are some files that are hidden in Linux. When you use ls without -a option, these hidden files are not listed. But if you would like to see linux ls hidden files also, you can use linux ls -a command. To show you this option better, we will use this option with -l option as ls -la. The files which start with dot (.), is an hidden file.
oot@kali:/home/kali# ls -la
total 128
drwxr-xr-x 17 kali kali 4096 Sep 19 08:52 .
drwxr-xr-x 3 root root 4096 Jan 27 2020 ..
-rw-r--r-- 1 kali kali 7 Jun 11 2021 abc
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc1
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc2
-rw-r--r-- 1 kali kali 2807 Sep 13 10:40 .bash_history
-rw-r--r-- 1 kali kali 220 Jan 27 2020 .bash_logout
-rw-r--r-- 1 kali kali 3391 Jan 27 2020 .bashrc
-rw-r--r-- 1 kali kali 3526 Jan 27 2020 .bashrc.original
drwxr-xr-x 8 kali kali 4096 Aug 11 04:40 .cache
drwxr-xr-x 9 kali kali 4096 Dec 20 2021 .config
drwxr-xr-x 2 kali kali 4096 Aug 11 04:40 Desktop
-rw-r--r-- 1 kali kali 55 Jan 27 2020 .dmrc
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Documents
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Downloads
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 EmptyXYZ
drwx------ 3 kali kali 4096 Jan 27 2020 .gnupg
-rw-r--r-- 1 kali kali 0 Dec 20 2021 hello.txt
-rw------- 1 kali kali 6156 Sep 19 07:53 .ICEauthority
-rw-r--r-- 1 root root 0 Sep 19 08:50 IPCisco-1.txt
-rw-r--r-- 1 root root 0 Sep 19 08:50 IPCisco-2.txt
-rw-r--r-- 1 root root 0 Sep 19 08:51 IPCisco-3.txt
-rw-r--r-- 1 root root 0 Sep 19 08:52 IPCisco-4.txt
drwxr-xr-x 3 kali kali 4096 Jan 27 2020 .local
drwx------ 5 kali kali 4096 Aug 11 04:40 .mozilla
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Music
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 MyFolder
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Pictures
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp2.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp.php
-rw-r--r-- 1 kali kali 807 Jan 27 2020 .profile
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Public
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Templates
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Videos
-rw------- 1 kali kali 1624 Jun 11 2021 .viminfo
-rw------- 1 kali kali 49 Sep 19 07:53 .Xauthority
-rw------- 1 kali kali 6992 Sep 19 09:09 .xsession-errors
-rw------- 1 kali kali 7211 Sep 13 10:40 .xsession-errors.old
Listing With Date: ls -t option
If you would like to list the files according to their modified date, you can use ls -t option. When you use ls with -t option, the files under that directory will be listed according to their modified date. And last modified file will be at the top. Again, we will use this option with -l option as ls -lt.
root@kali:/home/kali# ls -lt
total 44
drwxr-xr-x 2 kali kali 4096 Aug 11 04:40 Desktop
-rw-r--r-- 1 kali kali 0 Dec 20 2021 hello.txt
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 EmptyXYZ
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 MyFolder
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp2.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc2
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc1
-rw-r--r-- 1 kali kali 7 Jun 11 2021 abc
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Documents
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Downloads
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Music
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Pictures
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Public
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Templates
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Videos
ls -h option
Another Linux ls command option is “h”. When we use h option, this converts the listing to human readable format. For example, the size of the files become easier to read. We use this option, with -l option together, as -lh.
root@kali:/home/kali# ls -lh
total 44K
-rw-r--r-- 1 kali kali 7 Jun 11 2021 abc
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc1
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc2
drwxr-xr-x 2 kali kali 4.0K Aug 11 04:40 Desktop
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Documents
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Downloads
drwxr-xr-x 2 kali kali 4.0K Jun 11 2021 EmptyXYZ
-rw-r--r-- 1 kali kali 0 Dec 20 2021 hello.txt
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Music
drwxr-xr-x 2 kali kali 4.0K Jun 11 2021 MyFolder
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Pictures
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp2.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp.php
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Public
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Templates
drwxr-xr-x 2 kali kali 4.0K Jan 27 2020 Videos
Linux Listing Files Decending
To list files in the decending order, we use linux ls -lS option. This command will list our files in the decending order under the current directory. In other words, the largest file will be at the top. Here, there is a key point! The “S” is capital S.
root@kali:/home/kali# ls -lS
total 44
drwxr-xr-x 2 kali kali 4096 Aug 11 04:40 Desktop
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Documents
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Downloads
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 EmptyXYZ
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Music
drwxr-xr-x 2 kali kali 4096 Jun 11 2021 MyFolder
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Pictures
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Public
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Templates
drwxr-xr-x 2 kali kali 4096 Jan 27 2020 Videos
-rw-r--r-- 1 kali kali 7 Jun 11 2021 abc
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc1
-rw-r--r-- 1 kali kali 0 Jun 11 2021 abc2
-rw-r--r-- 1 kali kali 0 Dec 20 2021 hello.txt
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp2.php
-rw-r--r-- 1 kali kali 0 Jun 11 2021 ppp.php
All ls option: ls –help
To learn all the Linux ls options that can be used with ls, you can use ls –help command. Below, you can find the output of ls –help command.
You can use this command with “more” to see option page by page.
root@kali:/home/kali# ls --help -more
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.
Mandatory arguments to long options are mandatory for short options too.
-a, --all do not ignore entries starting with .
-A, --almost-all do not list implied . and ..
--author with -l, print the author of each file
-b, --escape print C-style escapes for nongraphic characters
--block-size=SIZE with -l, scale sizes by SIZE when printing them;
e.g., '--block-size=M'; see SIZE format below
-B, --ignore-backups do not list implied entries ending with ~
-c with -lt: sort by, and show, ctime (time of last
modification of file status information);
with -l: show ctime and sort by name;
otherwise: sort by ctime, newest first
-C list entries by columns
--color[=WHEN] colorize the output; WHEN can be 'always' (default
if omitted), 'auto', or 'never'; more info below
-d, --directory list directories themselves, not their contents
-D, --dired generate output designed for Emacs' dired mode
-f do not sort, enable -aU, disable -ls --color
--More--
Or you can use only ls –help command to see the page completely.
root@kali:/home/kali# ls --help
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.
Mandatory arguments to long options are mandatory for short options too.
-a, --all do not ignore entries starting with .
-A, --almost-all do not list implied . and ..
--author with -l, print the author of each file
-b, --escape print C-style escapes for nongraphic characters
--block-size=SIZE with -l, scale sizes by SIZE when printing them;
e.g., '--block-size=M'; see SIZE format below
-B, --ignore-backups do not list implied entries ending with ~
-c with -lt: sort by, and show, ctime (time of last
modification of file status information);
with -l: show ctime and sort by name;
otherwise: sort by ctime, newest first
-C list entries by columns
--color[=WHEN] colorize the output; WHEN can be 'always' (default
if omitted), 'auto', or 'never'; more info below
-d, --directory list directories themselves, not their contents
-D, --dired generate output designed for Emacs' dired mode
-f do not sort, enable -aU, disable -ls --color
-F, --classify append indicator (one of */=>@|) to entries
--file-type likewise, except do not append '*'
--format=WORD across -x, commas -m, horizontal -x, long -l,
single-column -1, verbose -l, vertical -C
--full-time like -l --time-style=full-iso
-g like -l, but do not list owner
--group-directories-first
group directories before files;
can be augmented with a --sort option, but any
use of --sort=none (-U) disables grouping
-G, --no-group in a long listing, don't print group names
-h, --human-readable with -l and -s, print sizes like 1K 234M 2G etc.
--si likewise, but use powers of 1000 not 1024
-H, --dereference-command-line
follow symbolic links listed on the command line
--dereference-command-line-symlink-to-dir
follow each command line symbolic link
that points to a directory
--hide=PATTERN do not list implied entries matching shell PATTERN
(overridden by -a or -A)
--hyperlink[=WHEN] hyperlink file names; WHEN can be 'always'
(default if omitted), 'auto', or 'never'
--indicator-style=WORD append indicator with style WORD to entry names:
none (default), slash (-p),
file-type (--file-type), classify (-F)
-i, --inode print the index number of each file
-I, --ignore=PATTERN do not list implied entries matching shell PATTERN
-k, --kibibytes default to 1024-byte blocks for disk usage;
used only with -s and per directory totals
-l use a long listing format
-L, --dereference when showing file information for a symbolic
link, show information for the file the link
references rather than for the link itself
-m fill width with a comma separated list of entries
-n, --numeric-uid-gid like -l, but list numeric user and group IDs
-N, --literal print entry names without quoting
-o like -l, but do not list group information
-p, --indicator-style=slash
append / indicator to directories
-q, --hide-control-chars print ? instead of nongraphic characters
--show-control-chars show nongraphic characters as-is (the default,
unless program is 'ls' and output is a terminal)
-Q, --quote-name enclose entry names in double quotes
--quoting-style=WORD use quoting style WORD for entry names:
literal, locale, shell, shell-always,
shell-escape, shell-escape-always, c, escape
(overrides QUOTING_STYLE environment variable)
-r, --reverse reverse order while sorting
-R, --recursive list subdirectories recursively
-s, --size print the allocated size of each file, in blocks
-S sort by file size, largest first
--sort=WORD sort by WORD instead of name: none (-U), size (-S),
time (-t), version (-v), extension (-X)
--time=WORD with -l, show time as WORD instead of default
modification time: atime or access or use (-u);
ctime or status (-c); also use specified time
as sort key if --sort=time (newest first)
--time-style=TIME_STYLE time/date format with -l; see TIME_STYLE below
-t sort by modification time, newest first
-T, --tabsize=COLS assume tab stops at each COLS instead of 8
-u with -lt: sort by, and show, access time;
with -l: show access time and sort by name;
otherwise: sort by access time, newest first
-U do not sort; list entries in directory order
-v natural sort of (version) numbers within text
-w, --width=COLS set output width to COLS. 0 means no limit
-x list entries by lines instead of by columns
-X sort alphabetically by entry extension
-Z, --context print any security context of each file
-1 list one file per line. Avoid '\n' with -q or -b
--help display this help and exit
--version output version information and exit
Leave a Reply