linux如何查看文件夹大小

linux如何查看文件夹大小,第1张

例如查看此文件的大小,文件:/home/oucanrong/iso/CentOS-610-x86_64-minimaliso

1:使用stat命令查看

stat命令一般用于查看文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。

命令:stat ~/iso/CentOS-610-x86_64-minimaliso

2:使用wc命令

wc命令一般用于统计文件的信息,比如文本的行数,文件所占的字节数。

命令: wc -c ~/iso/CentOS-610-x86_64-minimaliso

3:使用du命令

du命令一般用于统计文件和目录所占用的空间大小。 命令

:du -h ~/iso/CentOS-610-x86_64-minimaliso

4: 使用ls命令

ls 命令一般用于查看文件和目录的信息,包括文件和目录权限、拥有者、所对应的组、文件大小、修改时间、文件对应的路径等等信息。 命令:

ls -lh ~/iso/ubuntu-18041-live-server-amd64iso

5:使用ll命令(其实就是ls -l的别名)

在大部分的Linux系统中,都已经设置了ls -l的别名为ll,所以并不存在ll的命令,ll只是一个别名命令而已。

命令: ll -h ~/iso/ubuntu-18041-live-server-amd64iso

C语言中获取文件大小方式有很多,在不使用任何系统命令,仅使用C自身库函数情况下,常用方式有两种:

一、获取文件系统属性,读取文件大小。

在C语言库函数中有stat函数,可以获取文件的基本信息,其中就有文件大小。

#include <sys/stath>//包含头文件。

int file_size(char filename)//获取文件名为filename的文件大小。

{

    struct stat statbuf;

    int ret;

    ret = stat(filename,&statbuf);//调用stat函数

    if(ret != 0) return -1;//获取失败。

    return statbufst_size;//返回文件大小。

}

二、通过C语言文件 *** 作,获取文件大小。

以fopen打开的文件,通过fseek可以定位到文件尾,这时使用ftell函数,返回的文件指针偏移值,就是文件的实际大小。

代码如下:

#include <stdioh>//包含头文件。

int file_size(char filename)//获取文件名为filename的文件大小。

{

    FILE fp = fopen(filename, "rb");//打开文件。

    int size;

    if(fp == NULL) // 打开文件失败

        return -1;

    fseek(fp, 0, SEEK_END);//定位文件指针到文件尾。

    size=ftell(fp);//获取文件指针偏移量,即文件大小。

    fclose(fp);//关闭文件。

    return size;

}

三、注意事项:

第一种方式为直接读取文件信息,无需打开文件,所以更高效。

四、测试代码:

以上接口函数,均可以用如下主函数测试:

#include <stdioh>

int main()

{

    char s[100];

    int size;

    scanf("%s",s);//输入文件名

    size = file_size(s);//获取文件大小。

    if(size == -1) printf("无法获取文件大小,可能文件并不存在或不可读\n");

    else printf("文件大小为%d\n", size);

    return 0;

}

const size = await utilsgetFileSize(filePath);

getFileSize(file) {

    file = decodeURI(file);

    return new Promise((resolve) => {

      if (!file) {

        resolve(0);

        return;

      }

      const filePath = pathresolve(__dirname, "/public", file);

      fsstat(filePath, (err, data) => {

        if (err == null) {

          resolve(datasize);

          return;

        }

        resolve(0);

      });

    });

  },

stat函数不需要,只要文件名就行(你的文件在当前路径下,要不还需将路径名加上),int state(const char path,struct stat buf);这是函数原型。在struct state这个结构体中有个st_size这个变量,他就是文件大小的变量。具体你可以查一下man手册。与它类似的还有一个fstat,他需要open文件得到文件描述符。

函数名: stat

功 能: 读取打开文件信息

用 法: int stat(char pathname, struct stat buff);

程序例:

#include <sys\stath>

#include <stdioh>

#include <timeh>

#define FILENAME "TEST$$$"

int main(void)

{

struct stat statbuf;

FILE stream;

/ open a file for update /

if ((stream = fopen(FILENAME, "w+")) == NULL)

{

fprintf(stderr, "Cannot open output file\n");

return(1);

}

/ get information about the file /

stat(FILENAME, &statbuf);

fclose(stream);

/ display the information returned /

if (statbufst_mode & S_IFCHR)

printf("Handle refers to a device\n");

if (statbufst_mode & S_IFREG)

printf("Handle refers to an ordinary file\n");

if (statbufst_mode & S_IREAD)

printf("User has read permission on file\n");

if (statbufst_mode & S_IWRITE)

printf("User has write permission on file\n");

printf("Drive letter of file: %c\n", 'A'+statbufst_dev);

printf("Size of file in bytes: %ld\n", statbufst_size);

printf("Time file last opened: %s\n", ctime(&statbufst_ctime));

return 0;

}

以上就是关于linux如何查看文件夹大小全部的内容,包括:linux如何查看文件夹大小、如何用C语言获取文件的大小、Node.js如何获取文件大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9819068.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存