Linux的ls命令

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

在Linux系统中,要想知道系统中有哪些文件,可以使用列表命令——ls。下面是ls命令的一些用法。

1. ls

ls命令的最基本形式会显示当前目录下的文件和目录,ls命令输出的列表是按字母排序的,并且是按列排序而不是行排序。

# 命令形式:ls

# 例子
$ ls
01_intro.pdf                Effective Java 第二版 中文版.pdf  HTTP权威指南.pdf            spring-boot-reference-guide-zh.pdf  spring-framework-reference.pdf
DeepLearningBook.pdf            Effective_Java_2nd_Edition.pdf      code-complete-2nd-edition-v413hav.pdf   spring-boot-reference.pdf

2. ls -F

-F参数的ls命令可以区分文件和目录,-F参数在目录后面加了/,以便区分文件和目录,在可执行文件后面加了*,以便区分系统中可以运行的文件。

# 命令形式:ls -F

# 例子
$ ls -F
pom.xml     src/        target/

3. ls -a

Linux经常使用隐藏文件来保存配置信息,隐藏文件的文件名通常以.开头。ls命令默认情况下是不显示隐藏文件的,-a参数就是将隐藏文件一起显示出来。

# 命令形式:ls -a

# 例子
$ ls -a
.       ..      .DS_Store   pom.xml     src     target

4. ls -R

-R参数叫做递归选项,它会列出当前目录下包含的子目录中的文件。

# 命令形式:ls -R

# 例子
$ ls -R
pom.xml src target

./src:
main

./src/main:
java

./src/main/java:
Example.java

./target:
classes                 maven-archiver              myproject-0.0.1-SNAPSHOT.jar
generated-sources           maven-status                myproject-0.0.1-SNAPSHOT.jar.original

./target/classes:
Example.class

./target/generated-sources:
annotations

./target/generated-sources/annotations:

./target/maven-archiver:
pom.properties

./target/maven-status:
maven-compiler-plugin

./target/maven-status/maven-compiler-plugin:
compile

./target/maven-status/maven-compiler-plugin/compile:
default-compile

./target/maven-status/maven-compiler-plugin/compile/default-compile:
createdFiles.lst    inputFiles.lst

备注: ls命令的参数可以分开输入,例如ls -R -F,也可以合并,例如ls -FR

5. ls -l

-l参数是在显示文件的同时,加上文件的附加信息。每行是一个文件及其相关信息

# 命令形式:ls -l

# 例子
$ ls -l
total 8
-rw-r--r--  1 ***  staff  1837 10 14 20:26 pom.xml
drwxr-xr-x  4 ***  staff   136 10 14 13:07 src
drwxr-xr-x  9 ***  staff   306 10 14 20:33 target

每行信息解释,按顺序,以第一行为例:

  • 文件类型,目录为d,文件为-,字符型文件为c,块设备为b。第一行为-

  • 文件的权限,读写可执行等权限。第一行为rw-r--r--

  • 文件的硬盘链接综述。第一行为1

  • 文件属主(属于谁)的用户名。第一行为***

  • 文件属组(属于哪个组)的组名。第一行为staff

  • 文件的大小,以字节为单位。第一行为1837

  • 文件的最后一次修改时间。第一行为10 14 20:26

  • 文件名或目录名。第一行为pom.xml

6. ls文件过滤

ls还支持定义过滤器。通过过滤器可以决定显示哪些文件或目录。过滤器就是一个简单的文本匹配字符串。过滤器支持通配符,?代表一个字符,*代表零个或多个字符。当匹配目录是会显示目录下的内容。
除了? *之外,还支持[ ]

# 命令形式:ls 过滤器

# 例子
$ ls *om.xml
pom.xml

$ ls ?om.xml
pom.xml

# 匹配字符a,p
$ ls [ap]om.xml
pom.xml

# 匹配字符a-p,即a,b,...,p
$ ls [a-p]om.xml
pom.xml

# 匹配非p开头的文件
$ ls [!p]om.xml
ls: [!p]om.xml: No such file or directory

# 匹配非a开头的文件
$ ls [!a]om.xml
pom.xml

参考文献:

  1. Linux命令行与shell脚本编程大全(第三版)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值