您的位置:

Linux命令:ls的用法全解析

一、什么是ls命令

ls 即“list”,指令可以列出目录内容。用这个指令可以查看目录下的文件与子目录,并且可以通过参数进行排列、筛选等操作。

二、ls命令的基本用法

使用 ls 命令,列出当前目录下的所有文件及子目录:

ls

结果类似下面这样:

file1.txt file2.jpg folder1

其中,file1.txtfile2.jpg 是两个文件,而 folder1 是一个子目录。

如果我们想要进入子目录 folder1,可以使用cd命令进入子目录:

cd folder1

可以用ls命令列出该子目录下的所有文件:

ls

结果类似下面这样:

file3.txt file4.jpg folder2

其中,file3.txtfile4.jpg 为其下的文件,folder2 为其下的子目录。

三、ls命令的常用参数

1. -a

使用 -a 参数,可以列出目录下的所有文件和子目录,包括隐藏文件和目录(以.开头的文件和目录)。这个参数也可以用来确定一个文件是否被隐藏了。

ls -a

结果类似下面这样,可以看到有一些以.开头的文件和子目录:

. .. file1.txt file2.jpg .DS_Store .gitignore folder1

2. -l

使用 -l 参数,可以以列表形式以长格式列出所有的文件信息、权限、所有者、大小、时间等等。

ls -l

结果类似下面这样:

-rw-r--r-- 1 user staff 124 2 4 16:00 file1.txt
-rwxr-xr-x 1 user staff 245 2 4 16:10 file2.jpg
drwxr-xr-x 8 user staff 256 2 5 14:20 folder1

其中,drwxr-xr-x表示文件类型和对应的权限,user表示文件的所有者,staff为用户组,在文件大小后面的时间信息表示文件的最后修改时间。

3. -h

使用 -h 参数, 可以把文件的大小按照易读性友好的方式来显示。

ls -lh

结果类似下面这样:

-rw-r--r-- 1 user staff 124B 2 4 16:00 file1.txt
-rwxr-xr-x 1 user staff 245B 2 4 16:10 file2.jpg
drwxr-xr-x 8 user staff 256B 2 5 14:20 folder1

其中,大小显示为易读性更好的“124B”、“245B”和“256B”,其中“B”表示byte。

4. -r

使用 -r 参数,可以按照文件名的反序显示。

ls -r

结果类似下面这样,使用-r参数后,文件名反序显示:

folder1 file2.jpg file1.txt

5. -t

使用 -t 参数,可以按照文件的时间顺序显示,最新修改的文件显示在最上面。

ls -t

结果类似下面这样,在folder1下修改时间最新的file3.txt显示在最上面:

folder1 file4.jpg file3.txt file2.jpg file1.txt

四、常见问题

1. Permission Denied

在某些情况下,您可能会遇到 Permission denied 的问题。这通常是因为您对文件或目录没有读、写、执行权限。

您可以使用 chmod 命令为文件或目录添加权限:

chmod +x file1.txt

命令上述是为file1.txt 添加可执行权限,通过ls -l可以查看权限是否生效。

2. 目录不存在

如果您的目录不存在,使用ls命令将会返回目录不存在的错误信息。

您可以使用mkdir命令来创建一个目录:

mkdir new_folder

上述命令将会创建一个名字为new_folder的文件夹。

总结

通过这篇文章,我们学习了 ls 命令的基本用法以及常见参数的使用,包括如何列出目录下的所有文件和子目录,如何列出所有文件的详细信息,如何根据需要对文件进行排序等等。同时我们也掌握了如何通过修改文件的权限或创建文件夹的方式来解决一些常用的问题。