Linux 系统有非常好用的命令,功能也很丰富,绝大部分时候都是通过命令行的方式来进行操作的,如果你对命令行工具熟悉,那么可以非常高效率的完成一些基本的任务。本篇文章的内容较为基础,主要是为大家介绍几个在 Linux 系统中查看文件大小的命令。
1. ls
ls
可以理解为英文单词 list 的缩写,它的功能就是列出目录的内容及其内容属性信息(list directory contents)。这个命令有点类似于 DOS 系统下的 dir
命令,有意思的是,Linux 系统中其实也是有 dir
命令的,但是根据经验来看大部分人都会更习惯使用 ls
。
语法格式:
ls [option] [file]ls [选项] [文件或目录]
说明:命令后面的选项和目录文件可以省略,表示查看当前路径的文件信息。
常用参数选项及说明:
-l:使用长格式列出文件及目录信息
-a:显示目录下的所有文件,包括所有隐藏文件
-r:以相反次序排序
-i:显示 inode 节点信息
-h:以人类刻度的信息显示文件或目录大小,如 1KB、512MB、2GB 等等
-S:根据文件大小排序
-R:递归列出所有子目录
示例:
在示例示范之前,需要先做一下准备:
$ mkdir /testls
$ cd /testls/
$ touch 1.txt 2.txt 3.txt fstab
$ mkdir dir1 dir2 dir3
$ tree
.
├── 1.txt
├── 2.txt
├── 3.txt
├── dir1
├── dir2
├── dir3
└── fstab
上面创建了四个文件以及三个目录,下面就围绕以上创建的内容来进行演示:
1.1 直接执行 ls(不加参数的结果,显示所有文件和目录)
$ ls
1.txt 2.txt 3.txt dir1 dir2 dir3 fstab
1.2 使用 -a 参数显示所有文件,特别是隐藏文件
$ touch .4.txt
$ ls -a
. .. .4.txt 1.txt 2.txt 3.txt dir1 dir2 dir3 fstab
可以看到,在演示之前我们先创建了一个隐藏文件,在 Linux 系统中以 “.” 开头的文件就是隐藏文件。并且在上面的示例中,加了 -a
参数以后,就会把以 “.” 开头的内容显示出来,这里第一个点号表示当前目录,即 testls 目录本身,而两个点号则表示当前目录的上级目录,此处就代表根目录了。
1.3 使用 -l 参数显示详细信息
$ ls -l
total 16
-rw-r--r-- 1 root root 0 Nov 13 00:11 1.txt
-rw-r--r-- 1 root root 0 Nov 13 00:11 2.txt
-rw-r--r-- 1 root root 0 Nov 13 00:11 3.txt
drwxr-xr-x 2 root root 4096 Nov 13 00:11 dir1
drwxr-xr-x 2 root root 4096 Nov 13 00:11 dir2
drwxr-xr-x 2 root root 4096 Nov 13 00:11 dir3
-rw-r--r-- 1 root root 427 Nov 13 00:11 fstab
-l
参数可以说是最常用的参数了,意思是用长格式列出目录下的文件类型、权限、连接数、属主及创建修改时间的信息。
2. stat
stat
命令用于详细显示文件或文件系统的状态信息。
语法格式:
stat [option] [file]stat [选项] [文件或目录]
常用参数说明:
-f:显示文件所在分区的文件系统状态而非文件状态
-t:使用简洁格式输出
-c:使用指定格式代替默认格式
示例:(这里我们以查看 fstab 这个文件来做分析)
$ stat /etc/fstab
File: /etc/fstab
Size: 427 Blocks: 8 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 287012 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-11-12 22:24:57.000000000
Modify: 2020-09-11 10:18:46.000000000
Change: 2020-09-11 10:18:46.000000000
输出信息说明:
第一行:文件名
第二行:依次分别为,文件大小、占用 block 数量、block 总大小为 4096、文件类型
第三行:设备编号的十六进制和十进制、文件的 inode 值、文件的硬链接数
第四行:文件权限、用户和用户组
Access、Modify、Change 分别对应 访问时间、修改时间、状态更改时间
可以看出,stat
命令的输出结果还是比较详细的,对于输出的结果这块也有做出说明,想具体了解的同学可以对比观察学习。
今天为大家介绍的两个命令都比较简单好用,也是平时工作中使用频率较高的命令,感兴趣的同学下来可以多练习,尽可能熟练使用,喜欢的朋友不要忘记收藏和关注作者哦!