那个linux命令du 那个linux命令不能用于查看文件内容

Linux常用命令集du

du [选项][文件]

10年的平潭网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整平潭建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“平潭网站设计”,“平潭网站推广”以来,每个客户项目都认真落实执行。

显示每个文件和目录的磁盘使用空间。

-a或-all 显示目录中个别文件的大小。

-b或-bytes 显示目录或文件大小时,以byte为单位。

-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。

-k或--kilobytes 以KB(1024bytes)为单位输出。

-m或--megabytes 以MB为单位输出。

-s或--summarize 仅显示总计,只列出最后加总的值。

-h或--human-readable 以K,M,G为单位,提高信息的可读性。

-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。

-L符号链接或--dereference符号链接 显示选项中所指定符号链接的源文件大小。

-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。

-X文件或--exclude-from=文件 在文件指定目录或文件。

--exclude=目录或文件 略过指定的目录或文件。

-D或--dereference-args 显示指定符号链接的源文件大小。

-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。

-l或--count-links 重复计算硬件链接的文件。

命令:

du

输出:

说明:

只显示当前目录下面的子目录的目录大小和当前目录的总的大小,最下面的11536当前目录的总大小。

命令:

du hello.i

输出:

命令:

du ./process

输出:

命令:

du -s

输出:

命令:

du -h

命令:du -ah

命令 du -c hello.i ./use_code

输出

命令:

du -h |sort -nr|more

输出:

命令:

du -h --max-depth=1

输出:

linux命令:du、sort、more、cat、less

一个比较经典的问题:

如果线上机器的磁盘占用率超级高,怎么办?

这时候优先想到的肯定是,定位到占用磁盘空间最大的那些文件,然后把可以删的给删掉。

那么,问题来了,如何定位到占用磁盘空间最大的文件?

一个办法是执行如下命令:

里面涉及三个指令:du、sort、more

既然用到了,就顺便多了解一下这三个指令的用法,算是做下个人笔记。

首先是du

作用:用来查看文件所占用的磁盘情况。

格式:du [选项] [文件]

可用选项(如下为du --help展示的内容):

操作示例:

对几个比较常用的选项单独拿出来,在机器上实际操作,效果如下:

首先,当前目录如下:

du:

其实吧,从图里面可以看到,使用“du”的时候,最后一行就当前目录的磁盘使用总量,所以,感觉一般情况下-c这个选项并没有什么用。

du -s:只计算总量

不过,注意:-s与-a不能同时存在,会报错的。

sort

作用:对输出的结果进行排序

可用选项:

-r:代表逆序排序

-n:按照字符串数值排序

-g:按照常规数值排序

-f:忽略字母大小写

实测效果:

首先是测试文件的原始状态:

测试一:sort

可以发现:

空行排在了第一位;

不管数字有多大,字符串都会排在数字的后面;

数字之间排序的时候,优先考虑首位数字(感觉是把数字也当成了一个字符串进行排序);

more

作用:用于一页一页地展示文件内容。

几个常用操作:

空格:翻到下一页

b:翻到上一页

/:启动字符串搜索(类似于vim)

此外:

more +n XXX:从XXX文件的第n行开始展示

more -n XXX:展示XXX文件,并且将n行视为一页,也就是按空格时,只会显示后续的N行

cat

作用:一次性的展示所有文件内容

cat有两个比较有用的选项:

-n:输出所有行号

-b:只对非空行输出行号

此外,

cat支持同时输出多个文件的内容:cat XXX YYYY ZZZZ

并且,cat可以与more结合使用:cat XXX | more 或者 cat XXX YYYY ZZZZ | more 或者 cat -n XXX | more

less:

作用:对文件或者输出内容进行分页展示,并且less可以用于打开多个文件

常用操作:

j:向上滚动一行

k:向下滚动一行(类似于vim)

g:跳到第一行

G:跳到最后一行

b:向上翻一页

空格:翻页

n%:跳转到整个文件的n%处

:e :在使用less打开多个文件时,使用“:e”选择跳转到其他文件去

/:进行字符串搜索

v:启动编辑

常用选项:

-N:在每一行前面都显示行号

-m:显示读取文件的百分比

-M:显示读取文件的百分比、行号和总行数

注意:

其他两个比较简单的指令:

head:显示一个文件的前N行

用法:head -n 行数 文件名

tail:显示一个文件的最后N行

用法:tail -n 行数 文件名

不过,使用tai的时候,因为-f选项可以自动显示新增加的内容,所以经常会使用如下方式:

tail -f 文件名

linux 怎么查看文件夹大小

du是统计目录或文件所占磁盘空间大小的命令。

我们在统计目录时,不是想看父目录下的子目录名和子文件名到底占用了多少空间,而是想看父目录下的子目录和子文件的总磁盘占用量大小,这时就需要使用 du

命令才能统计目录的真正磁盘占用量大小。

du命令的格式如下:

du [选项] [目录或文件名]

选项:

-a:显示每个子文件的磁盘占用量。默认只统计子目录的磁盘占用量

-h:使用习惯单位显示磁盘占用量,如KB、MB或GB等;

-s:统计总磁盘占用量,而不列出子目录和子文件的磁盘占用量

通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。

查询当前目录总大小可以使用du -sh,其中s代表统计汇总的意思,即只输出一个总和大小。

通过命令du -h –max-depth=0 *,可以只显示直接子目录文件及文件夹大小统计值。

如果只想查看指定目录的总大小,可以使用du -sh 目录名称。

对于指定文件夹也可以指定显示层次深度,如du -h --max-depth=0 software/及du -h --max-depth=1

software/

使用du命令和df命令去统计分区的使用情况时,得到的数据是不一样的。那是因为df命令是从文件系统的角度考虑的,通过文件系统中未分配的空间来确定文件系统中已经分配的空间大小。也就是说,在使用df命令统计分区时,不仅要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经删除,但是程序并没有释放空间)。

而du命令是面向文件的,只会计算文件或目录占用的磁盘空间。也就是说,df命令统计的分区更准确,是真正的空闲空间。

Linux查看文件大小du命令

du [-abcDhHklmsSx] [-L 符号连接][-X 文件][--block-size][--exclude=目录或文件] [--max-depth=目录层数][--help][--version][目录或文件]

常用参数:

-a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。

-b或-bytes 显示目录或文件大小时,以byte为单位。

-c或–total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。

-D或–dereference-args 显示指定符号连接的源文件大小。

-h或–human-readable 以K,M,G为单位,提高信息的可读性。

-H或–si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。

-k或–kilobytes 以1024 bytes为单位。

-l或–count-links 重复计算硬件连接的文件。

-L符号连接或–dereference符号连接 显示选项中所指定符号连接的源文件大小。

-m或–megabytes 以1MB为单位。

-s或–summarize 仅显示总计,即当前目录的大小。

-S或–separate-dirs 显示每个目录的大小时,并不含其子目录的大小。

-x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。

-X文件或–exclude-from=文件 在文件指定目录或文件。

–exclude=目录或文件 略过指定的目录或文件。

–max-depth=目录层数 超过指定层数的目录后,予以忽略。

–help 显示帮助。

–version 显示版本信息。

1 要显示一个目录树及其每个子树的磁盘使用情况

du /home/linux

这在/home/linux目录及其每个子目录中显示了磁盘块数。

2 要通过以1024字节为单位显示一个目录树及其每个子树的磁盘使用情况

du -k /home/linux

这在/home/linux目录及其每个子目录中显示了 1024 字节磁盘块数。

3 以MB为单位显示一个目录树及其每个子树的磁盘使用情况

du -m /home/linux

这在/home/linux目录及其每个子目录中显示了 MB 磁盘块数。

4 以GB为单位显示一个目录树及其每个子树的磁盘使用情况

du -g /home/linux

这在/home/linux目录及其每个子目录中显示了 GB 磁盘块数。

5查看当前目录下所有目录以及子目录的大小:

du -h .

“.”代表当前目录下。也可以换成一个明确的路径

-h表示用K、M、G的人性化形式显示

6查看当前目录下user目录的大小,并不想看其他目录以及其子目录:

du -sh user

-s表示总结的意思,即只列出一个总结的值

du -h --max-depth=0 user

--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。

7列出user目录及其子目录下所有目录和文件的大小:

du -ah user

-a表示包括目录和文件

8列出当前目录中的目录名不包括xyz字符串的目录的大小:

du -h --exclude='*xyz*'

9想在一个屏幕下列出更多的关于user目录及子目录大小的信息:

du -0h user

-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。

10只显示一个目录树的全部磁盘使用情况

du -s /home/linux

11查看各文件夹大小:du -h --max-depth=1

Linux里面du命令作用是什么?

统计目录中的文件的大小并以列表显示: du [Path] -a 全部文件 包括隐藏的。 -h 以M 为单位显示文件大小结果。 -s 统计此目录中所有文件大小总和。 .. 这些是常用的 e.g.: du -sh du -ah


当前文章:那个linux命令du 那个linux命令不能用于查看文件内容
当前URL:http://scyanting.com/article/dodgpci.html