㈠ perl中stat函数怎么计算文件的大小
my
@args
=
stat
($filename);
my
$size
=
$args[7];
stat()函数返回一个数组。下面是数组各元素的含义。
0
dev
设备号
驱动器号(C:通常是2,D:通常是3,等等)
1
ino
索引节号
总是0
2
mode
文件的方式
无
3
nlink
链接号
通常为0;Windows
NT;文件系统允许链接
4
uid
文件所有者的用户ID(UID)总是0
5
gid
文件所有者的组ID(GID)总是0
6
rdev
特殊文件信息
驱动器号(重复)
7
size
文件大小(以字节计)文件大小(以字节计)
8
atime
上次访问的时间
上次访问的时间
9
mtime
上次修改的时间
上次修改的时间
10
ctime
Inode修改时间
文件的创建时间
11
blksz
磁盘块的大小
总是0
12
blocks
文件中的块的数量
总是0
例:获取文件时间
my
@array
=
stat("mysql.tar.gz");
print
"$array[9]\n";
$size=(stat)[7]
$size=(stat
filename)[7]
perl中的文件测试参数
-r
文件或是目录对该(有效)用户或组可读
-w
文件或是目录对该(有效)用户或组可写
-x
文件或是目录对该(有效)用户或组可
-o
文件或是目录被该(有效)用户所有
-R
文件或目录对该实际用户或组可读
-W
文件或目录对该实际用户或组可写
-X
文件或目录对该实际用户或组可执行
-O
文件或目录被该实际用户所有
-e
文件或目录存在
-z
文件存在,大小为零,判断文件是否大小为零(对目录总为假)
-s
文件存在,大小非零(即,文件大小,单位为字节)
-f
条目是个普通文件
-d
条目是个普通目录
-l
条目是个符号连接
-S
条目是个套接字
-p
条目是个命名管道(一个fifo)
-b
条目是个特殊(block-special)文件(如一个可装载磁盘)
-c
条目是个字符特殊(character-special)文件(如一个I/O设备)
-u
文件或目录是setuid
-g
文件或目录是setgid
-k
文件或目录的粘着位(sticky
bit)被设置
-t
文件句柄是个TTY(可由isatty()系统函数返回;文件名不能由本测试来测试)
-T
文件像是个“文本”文件
-B
文件像是个“二进制”文件
-M
更改年龄(单位:天)
-A
访问年龄(单位:天)
-C
Inode更改年龄(单位:天)
例如查看此文件的大小,文件:/home/oucanrong/iso/CentOS-6.10-x86_64-minimal.iso
1:使用stat命令查看
stat命令一般用于查看文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。
命令:stat ~/iso/CentOS-6.10-x86_64-minimal.iso
2:使用wc命令
wc命令一般用于统计文件的信息,比如文本的行数,文件所占的字节数。
命令: wc -c ~/iso/CentOS-6.10-x86_64-minimal.iso
3:使用命令
命令一般用于统计文件和目录所占用的空间大小。 命令
: -h ~/iso/CentOS-6.10-x86_64-minimal.iso
4: 使用ls命令
ls 命令一般用于查看文件和目录的信息,包括文件和目录权限、拥有者、所对应的组、文件大小、修改时间、文件对应的路径等等信息。 命令:
ls -lh ~/iso/ubuntu-18.04.1-live-server-amd64.iso
5:使用ll命令(其实就是ls -l的别名)
在大部分的Linux系统中,都已经设置了ls -l的别名为ll,所以并不存在ll的命令,ll只是一个别名命令而已。
命令: ll -h ~/iso/ubuntu-18.04.1-live-server-amd64.iso
㈢ linux 下怎么查看文件大小
1. 首先我们先来看最简单的方法,这种方法只是适用于有图形界面的linux操作系统,例如fedora操作系统。右击我们需要查看文件夹,然后点击属性选项,在弹出的属性框中找到内容所在一行,会列出此文件夹有多少项和其大小 2.当然以上方法适用范围有限,只适用于图形界面的linux操作系统,下面小编介绍一种通用的方法,那就是使用命令行操作。你的linux操作系统可以没有图形界面,但总不会不能操作命令行吧,我们点击终端开始操作命令行。 3.首先我们使用ls命令,列出当前文件夹下的所有文件和文件夹,然后我们使用cd命令打开我们需要查看文件夹大小的文件夹,然后我们使用 -s命令,此时我们可能会看到一长串的数字,这就是我们先要的文件夹的大小,只不过显示的是文件夹的字节数。 4.很多朋友可能不习惯字节数,不知道它到底是代表多大,此时我们可以再次使用命令,只不过把后面的参数多加一个h,具体命令是 -sh,然后我们再来看看数值,是不是变了呢,已经变成了以M结尾的数字。 5.当然命令除了这种用法之外还有其他的用法,那就直接在 -sh /输入你想要查询的文件夹路径即可,例如 -sh /home/fengshenlong/vm就是查询vm文件夹的大小,输入命令即可看到,跟直接进入目录输入的结果是一致的。 6.当然除了命令之外还有ls命令也可以查询文件和目录的大小,但是小编使用命令之后查询出来的大小都是4.0k不知道是用法不对还是其他的原因,故在此没有详细的做出介绍,如果有兴趣的朋友可以研究一下它的具体用法。
㈣ Linux怎么用stat命令显示文件
用法:stat [选项]... 文件...
显示文件或文件系统的状态。
-L, --dereference 跟随链接
-f, --file-system 显示文件系统状态而非文件状态
-c --format=格式 使用指定输出格式代替默认值,每用一次指定格式换一新行
--printf=格式 类似 --format,但是会解释反斜杠转义符,不使用换行作
输出结尾。如果您仍希望使用换行,可以在格式中
加入"\n"
-t, --terse 使用简洁格式输出
--help 显示此帮助信息并退出
--version 显示版本信息并退出
有效的文件格式序列(不使用 --file-system):
%a 八进制权限
%A 用可读性较好的方式输出权限
%b 计算已分配块数(参见%B)
%B 以字节为单位输出%b 所报告的每个块的大小
%C SELinux 安全环境字符串
%d 十进制设备编号
%D 十六进制设备编号
%f 十六进制原始模式
%F 文件类型
%g 文件的属组ID
%G 文件的属组组名
%h 硬链接数量
%i Inode 编号
%m 挂载点
%n 文件名
%N 如果对象是一个符号链接,显示引用到的其它文件名
%o I/O 块大小
%s 总计大小,以字节为单位
%t 十六进制主设备类型
%T 十六进制子设备类型
%u 文件的属主ID
%U 文件的属主用户名
%w 文件创建时间,若未知则显示"-"
%W 从UNIX 元年起以秒计的文件创建时间,若未知则显示"-"
%x 上次访问时间
%X 从UNIX 元年起以秒计的上次访问时间
%y 上次修改时间
%Y 从UNIX 元年起以秒计的上次修改时间
%z 上次更改时间
%Z 从UNIX 元年起以秒计的上次更改时间
有效的文件系统格式序列:
%a 非超级用户可用的剩余块数
%b 文件系统的总数据块数
%c 文件系统中文件节点总数
%d 文件系统中空闲文件节点数
%f 文件系统中空闲块数
%i 十六进制文件系统ID
%I 允许的文件名最大长度
%n 文件名
%s 块大小(用于快速传输)
%S 基本块大小(用于块计数)
%t 十六进制类型描述
%T 可读性较好的类型描述
注意:您的shell 内含自己的stat 程序版本,它会覆盖这里所提及的相应
版本。请查阅您的shell 文档获知它所支持的选项。
ls 命令及其许多参数提供了一些非常有用的文件信息。另一个不太为人所熟知的命令 stat 提供了一些更为有用的信息。
下面演示了如何对可执行文件“oracle”(位于 $ORACLE_HOME/bin 目录下)使用此命令。
复制代码
代码如下:
# cd $ORACLE_HOME/bin
# stat oracle
File: `oracle'
Size: 93300148 Blocks:182424 IO Block:4096 Regular File
Device: 343h/835d Inode: 12009652 Links: 1
Access: (6751/-rwsr-s--x) Uid:( 500/ oracle) Gid:( 500/ dba)
Access: 2006-08-04 04:30:52.000000000 -0400
Modify: 2005-11-02 11:49:47.000000000 -0500
Change: 2005-11-02 11:55:24.000000000 -0500
注意使用该命令获得的信息:除了通常的文件大小(也可以使用 ls -l 命令获得)以外,您还获得了该文件占用的块数。通常的 Linux 块大小为 512 字节,因此一个大小为 93,300,148 字节的文件将占用 (93300148/512=) 182226.85 个块。由于块都是完整占用,因此该文件使用了一些整数个数的块。无需猜测就可以获得确切的块数。
您还可以从以上输出中获得文件所有权的 GID 和 UID,以及权限的八进制表示形式 (6751)。如果要将文件恢复到它现在具有的相同权限,可以使用 chmod 6751 oracle,而不是显式拼写这些权限。
以上输出最有用的部分是文件访问时间戳信息。该输出显示,该文件被访问的时间是 2006-08-04 04:30:52(显示在“Access:”的旁边),即 2006 年 8 月 4 日上午 4:30:52。这是某个人开始使用数据库的时间。该文件的修改时间是 2005-11-02 11:49:47(显示在“Modify:”的旁边)。最后,“Change:”旁边的时间戳显示文件状态更改的时间。
stat 命令的修改符 -f 显示了有关文件系统(而非文件)的信息:
复制代码
代码如下:
# stat -f oracle
File: "oracle"
ID: 0 Namelen:255 Type:ext2/ext3
Blocks: Total: 24033242 Free: 15419301 Available: 14198462 Size: 4096
Inodes: Total: 12222464 Free: 12093976
另一个选项 -t 显示了完全相同的信息,只不过是在一行中显示的:
复制代码
代码如下:
# stat -t oracle
oracle 93300148 182424 8de9 500 500 343 12009652 1 0 0 1154682061
1130950187 1130950524 4096
这对 shell 脚本非常有用,在 shell 脚本中可以使用一个简单的 cut 命令获得值以进行进一步处理。
㈤ linux查看文件大小命令
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。
通过命令-h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。查询当前目录总大小可以使用 -sh,其中s代表统计汇总的意思,即只输出一个总和大小。
Linux
全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。
㈥ linux里如何查看文件大小
ls -lh或者ls -l -h 把把文件和文件夹列表方式列出,并且显示大小;
ls -a 把所有文件和目录列出来,包含隐藏的文件和目录。
ls -l 把文件和文件夹列表方式列出;
ls -lh或者ls -l -h 把把文件和文件夹列表方式列出,并且显示大小;
ls -lha或者ls -l -h -a 把所有文件夹和文件(包括隐藏的)列表方式列出,并且包含大小;