linux下 为什么ls -l命令 和ls -sh 、du 显示文件的大小不一样?

发布网友 发布时间:2022-04-25 16:00

我来回答

4个回答

热心网友 时间:2023-10-15 12:03

不是显示文件大小,而是显示文件所占用的block大小,默认linux系统分区的block size是4k,也就是说即使文件只有1个字节,也会占用4k,ls -l则是文件的实际大小。操作方法如下:

1、打开Linux系统终端,然后进入某个文件夹,并且输入ls命令,即可列出该文件夹下的所有文件名信息了。

2、当然也可以用*加字母来匹配一些后缀名等,这样即可列出指定后缀名的文件了。

3、也可以列出以某些字母或者是字符串开头的文件的。

4、匹配一些无规则的,可以把要匹配的字符放到中括号里面即可。

5、还可以把所有的文件名导入进一个TXT文件里,ls>文件名.txt即可把该目录下的所有文件名保存到这个文本文件里了。

6、最后打开这个TXT文件,即可看到对应目录下的所有文件的文件名了。

热心网友 时间:2023-10-15 12:04

不是显示文件大小,而是显示文件所占用的 block 大小,默认linux系统分区的 block size 是4k,也就是说即使文件只有1个字节,也会占用4k.
s -l则是文件的实际大小

先看一下系统分区时的块大小,

/sbin/tune2fs -l /dev/***
如果是4K就对了,如果你的是1K的话文件指向的node也要占块大小
LINUX下 ls –l命令的作用是
显示长格式,就是显示一个比较完整的信息,包括权限,拥有者,拥有组,文件名,大小等在内。你可以设置别名 alias ll='ls -l',以后就可以直接用ll来替代ls -l这个命令了。

热心网友 时间:2023-10-15 12:04

那我在详细解释一下: 不是显示文件大小,而是显示文件所占用的 block 大小,默认linux系统分区的 block size 是4k,也就是说即使文件只有1个字节,也会占用4k.

这下楼主明白否?

ls -l则是文件的实际大小。建议主楼在详细读一下linux基础篇。呵呵

你先看一下你自己系统分区时的块大小,
/sbin/tune2fs -l /dev/***
如果是4K就对了,如果你的是1K的话文件指向的node也要占块大小

热心网友 时间:2023-10-15 12:05

-s 使用单位不一样嘛

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com