Home >Operation and Maintenance >Linux Operation and Maintenance >How to use ls command to list files in Linux? (code example)
The ls command is one of the basic commands that any Linux user should know; it is used to list information about files and directories in a file system. The following article will show you how to use the ls command in Linux. I hope it will be helpful to you.
How to use the ls command?
The syntax of the ls command is as follows:
ls [OPTIONS] [FILES]
The ls command has many [OPTIONS] options. Here are some commonly used options:
● -l : You can make ls list files in long list format.
● -a: Display all files and directories, including the following files.
● -t: List the files in order of creation (modification) time.
● -r: Display files in reverse order (originally in English alphabetical order).
● -R: If there are files in the directory, the files in the directory will be listed in sequence.
When used without parameters, the ls command will list the names of all files in the current working directory in alphabetical order.
ls
Output:
cache empty games lib local mail opt run
To list the files in a specific directory, you need to pass the path of the directory to the ls command. For example, to list the contents of the directory /etc, you would type:
ls /etc
You can also pass multiple directories and files to the ls command separated by spaces:
ls /etc /var /etc/passwd
If the logged-in user does not read permission to the directory, the user will receive a message stating that the ls command cannot open the directory:
ls /root
Output:
ls: cannot open directory '/root': Permission denied
How to list long List format?
The default output of the ls command only displays the name of the file, which is not very informative. However, when using the long list format, the ls command will display the following file information:
● File type
● File permissions
● Number of hard links to the file
● File owner
● File group
● File size
● Date and time
● File name
We can Use the -l (lowercase L) option to cause ls to output file information in a long listing format. For example:
ls -l /etc/hosts
Output:
-rw-r--r-- 1 root root 337 Oct 4 11:31 /etc/hosts
Explanation: Let us explain the output information
1. The first character '-' displays the file type
In our example, the first character is -, indicating a regular file. The values for other file types are as follows:
● -: Regular files
● b: Block special files
● c: Character special files
● d : Directory
● l : Symbolic link
● n : Network file
● p : FIFO
● s : Socket
2. Nine characters (rw-r--r--) display file permissions
The first three characters are for users, the last three characters are for groups, and the last three characters are for others. We can use the chmod command to change file permissions; the permission characters can take the following values:
● r: permission to read the file
● w: permission to write the file
● x: Permission to execute the file
● s: Setgid bit
● t: Stickiness
In our example, rw-r--r-- represents the user The file can be read and written, while the group and others can only read the file. However, the number of nine characters (rw-r--r--) followed by 1 allows the number of characters following the hard link to the file.
3. root root 337
Two fields root root display the file owner and group, followed by the file size (337) in bytes. If you want to output the dimensions in a readable format, you need to use the -h option. Users can change file owners using the chmod command.
4, Oct 4 11:31
Oct 4 11:31 is the last modification date and time of the file.
5./etc/hosts
/etc/hosts is the name of the file.
How to display hidden files?
In Linux, hidden files are any files starting with a dot (.); and by default, the ls command will not display hidden files.
How to display all files, including hidden files, you need to use the -a option:
ls -la ~/
Output:
drwxr-x--- 10 linuxize linuxize 4096 Feb 12 16:28 . drwxr-xr-x 18 linuxize linuxize 4096 Dec 26 09:21 .. -rw------- 1 linuxize linuxize 1630 Nov 18 2017 .bash_history drwxr-xr-x 2 linuxize linuxize 4096 Jul 20 2018 bin drwxr-xr-x 2 linuxize linuxize 4096 Jul 20 2018 Desktop drwxr-xr-x 4 linuxize linuxize 4096 Dec 12 2017 .npm drwx------ 2 linuxize linuxize 4096 Mar 4 2018 .ssh
We also use the -l option to display all files details.
How to modify the ls output order?
By default, the ls command lists files in alphabetical order; but we can also modify the output order:
● --sort=extension (or -X) : Sort alphabetically by entry extension
● --sort=size (or -S): Sort by file size
● --sort=time (or -t): Sort by file size Modification time sorting
● --sort=version (or -v): Natural type (version) number in the text
If you want to get the results in reverse sort order, you need to use -r options.
For example, to sort the files in the /var directory by modification time in reverse sort order, you would use:
ls -ltr /var
It is worth mentioning that the ls command does not display the directory content occupation of total space.
How to list subdirectories recursively?
Use the -R option to tell the ls command to display the contents of the subdirectory:
ls -R
相关视频教程推荐:《Linux教程》
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!
The above is the detailed content of How to use ls command to list files in Linux? (code example). For more information, please follow other related articles on the PHP Chinese website!