精华内容
下载资源
问答
  • 列出当前路径下所有文件

    千次阅读 2018-10-30 18:34:09
    os.sep可以取代操作系统特定的路径分隔符。windows为 “\\” ...os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。 os.getenv()获取一个环境变量,如果没有返回none os.putenv(key, val...
    os.sep可以取代操作系统特定的路径分隔符。windows下为 “\\”
    os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。
    
    os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
    
    os.getenv()获取一个环境变量,如果没有返回none
    
    os.putenv(key, value)设置一个环境变量值
    
    os.listdir(path)返回指定目录下的所有文件和目录名。
    
    os.remove(path)函数用来删除一个文件。
    
    os.system(command)函数用来运行shell命令。
    
    os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。
    
    os.curdir:返回当前目录('.')
    os.chdir(dirname):改变工作目录到dirname
    
    ========================================================================================
    
    os.path常用方法:
    
    os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。
    
    os.path.exists()函数用来检验给出的路径是否真地存在
    
    os.path.getsize(name):获得文件大小,如果name是目录返回0L
    
    os.path.abspath(name):获得绝对路径
    os.path.normpath(path):规范path字符串形式
    
    os.path.split(path) :将path分割成目录和文件名二元组返回。
    
    os.path.splitext():分离文件名与扩展名
    
    os.path.join(path,name):连接目录与文件名或目录;使用“\”连接
    os.path.basename(path):返回文件名
    os.path.dirname(path):返回文件路径 
    列出当前路径下所有文件。
    
    # -*- coding: utf-8-*-
    import os
    def list_file(path):
        for dirpath, dirname, filenames in os.walk(path):
            for filename in filenames:
                # print dirpath,dirname,filename
                if '.' not in dirpath: # 把隐藏文件夹排除掉
                    print os.path.join(dirpath, filename)
    if __name__ == '__main__':
        curdir = os.getcwd() # 得到当前工作目录
        list_file(curdir)

     

    展开全文
  • C++如何获取当前路径下所有文件的文件名 今天我遇到了这样一个任务:要求编写一个程序,统计和这个程序在同一目录(及其子目录)所有文件的单词数。统计单词数十分倒不是太难,倒是找出同一目录的所有文件,是...

    C++如何获取当前路径下所有文件的文件名

    今天我遇到了这样一个任务:要求编写一个程序,统计和这个程序在同一目录下(及其子目录)所有文件的单词数。统计单词数十分倒不是太难,倒是找出同一目录下的所有文件,是我从来没有接触过的。仔细分析,这个问题其实包含两个小问题:

    1. 如何获取当前程序所在文件夹的路径
    2. 如何给定一个路径,递归地找到其中(包括子目录)所有文件的文件名(相对路径)

    那我们就依次解决这两个问题。
    .
    .

    1. 如何获取当前程序所在文件夹的路径

    .
    .
    解决这个问题只需要一个简单的函数即可(需要包含一个输入输出库):

    #include <io.h>
    char *getcwd( char *buffer, int maxlen );

    这个函数能够获取当前的工作目录,具体来说,它会将当前工作目录的绝对路径复制到参数buffer所指的内存空间中,参数maxlen为buffer的空间大小。
    .
    我们可以写一个程序来测试一下。

    #include<iostream>
    #include<io.h>
    using namespace std;
    

    #define MAX_PATH 80

    int main()
    {
    char buffer[MAX_PATH];
    getcwd(buffer, MAX_PATH);
    cout << buffer << endl;
    return 0;
    }


    .
    运行成功!
    .
    .
    .

    2. 如何给定一个路径,递归地找到其中(包括子目录)所有文件的文件名(相对路径)

    .
    .
    这里我使用了网上现成的代码,先附上链接
    .
    这里,他定义了一个函数(需要包含一个向量库,当然,还有我们在上一个问题里需要使用的输入输出库)

    #include <io.h>
    #include<vector>
    void getFiles(string path, vector<string>& files);

    它的用处是,给定一个文件目录path,然后找到其中所有(包括其子目录里)的文件,将文件名放入files中,files是一个字符串向量的引用类型。
    .
    具体的函数内容是这样的:

    void getFiles( string path, vector<string>& files )  
    {  
        //文件句柄  
        long   hFile   =   0;  
        //文件信息  
        struct _finddata_t fileinfo;  
        string p;  
        if((hFile = _findfirst(p.assign(path).append("\\*").c_str(),&fileinfo)) !=  -1)  
        {  
            do  
            {  
                //如果是目录,迭代之  
                //如果不是,加入列表  
                if((fileinfo.attrib &  _A_SUBDIR))  
                {  
                    if(strcmp(fileinfo.name,".") != 0  &&  strcmp(fileinfo.name,"..") != 0)  
                        getFiles( p.assign(path).append("\\").append(fileinfo.name), files );  
                }  
                else  
                {  
                    files.push_back(p.assign(path).append("\\").append(fileinfo.name) );  
                }  
            }while(_findnext(hFile, &fileinfo)  == 0);  
            _findclose(hFile);  
        }  
    }

    .
    下面给出一个运用这个函数的例子:

    #include<iostream>
    #include<vector>
    #include<io.h>
    using namespace std;
    

    #define MAX_PATH 80
    void getFiles( string path, vector<string>& files );

    int main()
    {
    vector<string> files;
    char * filePath = “C:\Users\Star\Desktop\SoftTest”;
    获取该路径下的所有文件
    getFiles(filePath, files);
    char str[30];
    int size = files.size();
    for (int i = 0;i < size;i++)
    {
    cout<<files[i].c_str()<<endl;
    }
    return 0;
    }


    运行成功!
    .
    .
    .

    3. 组合以后的完整代码

    .

    #include<iostream>
    #include<vector>
    #include<io.h>
    using namespace std;
    

    #define MAX_PATH 80
    void getFiles( string path, vector<string>& files );

    int main()
    {
    vector<string> files;
    char buffer[MAX_PATH];
    getcwd(buffer, MAX_PATH);
    char * filePath = buffer;
    获取该路径下的所有文件
    getFiles(filePath, files );
    char str[30];
    int size = files.size();
    for (int i = 0;i < size;i++)
    {
    cout<<files[i].c_str()<<endl;
    }
    return 0;
    }

    void getFiles( string path, vector<string>& files )
    {
    //文件句柄
    long hFile = 0;
    //文件信息
    struct _finddata_t fileinfo;
    string p;
    if((hFile = _findfirst(p.assign(path).append("\*").c_str(),&fileinfo)) != -1)
    {
    do
    {
    //如果是目录,迭代之
    //如果不是,加入列表
    if((fileinfo.attrib & _A_SUBDIR))
    {
    if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"…") != 0)
    getFiles( p.assign(path).append("\").append(fileinfo.name), files );
    }
    else
    {
    files.push_back(p.assign(path).append("\").append(fileinfo.name) );
    }
    }while(_findnext(hFile, &fileinfo) == 0);
    _findclose(hFile);
    }
    }

    .
    这段代码的运行结果和上面的运行结果相同,我就不给出运行结果了。
    .
    .
    .

    4.返回相对路径

    .
    之前的那种方法很好,不过唯一的缺点是,函数返回的都是绝对路径,如果想要改成相对路径,该怎么办呢?
    .
    .
    我将代码进行了修改,具体做法是在getFile()函数中加入了一个path2参数,改进后的代码如下:
    .

    #include<iostream>
    #include<vector>
    #include<io.h>
    using namespace std;
    

    #define MAX_PATH 80
    void getFiles( string path, string path2, vector<string>& files );

    int main(){
    vector<string> files;
    char buffer[MAX_PATH];
    getcwd(buffer, MAX_PATH);
    string filePath;
    filePath.assign(buffer).append("\");
    获取该路径下的所有文件
    getFiles(filePath,"", files );
    char str[30];
    int size = files.size();
    for (int i = 0;i < size;i++)
    {
    cout<<files[i].c_str()<<endl;
    }
    return 0;
    }

    void getFiles( string path, string path2, vector<string>& files )
    {
    //文件句柄
    long hFile = 0;
    //文件信息
    struct _finddata_t fileinfo;
    string p,p2;
    if((hFile = _findfirst(p.assign(path).append(path2).append("*").c_str(),&fileinfo)) != -1)
    {
    do
    {
    //如果是目录,迭代之
    //如果不是,加入列表
    if((fileinfo.attrib & _A_SUBDIR))
    {
    if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"…") != 0)
    getFiles( p.assign(path).append("\"),p2.assign(fileinfo.name).append("\"), files );
    }
    else
    {
    files.push_back(p.assign(path2).append(fileinfo.name) ); //这一行可以给出相对路径
    //files.push_back(p.assign(fileinfo.name) ); //这一行可以给出文件名
    }
    }while(_findnext(hFile, &fileinfo) == 0);
    _findclose(hFile);
    }
    }

    .
    运行结果:

    成功地给出了相对路径!!
    .
    .
    也可以给出文件名:

    .
    .
    .

    展开全文
  • linux查看当前目录下文件大小 可以将当前目录所有文件的大小给列出来。按照从大到小的方式排序: du -sh * | sort -nr du -sh 查询当前目录总大小 du -sh * 查询当前目录所有子目录总大小 , * 指所有目录,...

    linux查看当前目录下文件大小

    可以将当前目录下所有文件的大小给列出来。按照从大到小的方式排序:

    du -sh * | sort -nr 
    

    du -sh 查询当前目录总大小
    du -sh * 查询当前目录下所有子目录总大小 , * 指所有目录,如果只要查询某个目录 替换掉*即可

    du -s * | sort -nr | head 选出排在前面的10个。
    du -s * | sort -nr | tail 选出排在后面的10个。

    查看当前目录下一级子文件和子目录占用的磁盘容量:

    du -lh --max-depth=1 
    

    改变“–max-depth=1”中的数值大小就可以指定查看该目录下多少级子目录

    du参数解释
    -h或–human-readable 以K,M,G为单位,提高信息的可读性
    -s或–summarize 仅显示总计,即当前目录的大小。

    常用:
    du -sh * | sort -nr 查询当前目录下所有子目录总大小 并按大小排序

    展开全文
  • 在linux系统中查看当前路径下各文件夹大小以及磁盘的剩余空间不像Windows系统,可以比较直观地查看,因此要使用命令行操作来显示。 查看当前路径下各文件夹大小 利用du命令(disk usage) du -sh : 查看当前目录总共...

    背景

    在linux系统中查看当前路径下各文件夹大小以及磁盘的剩余空间不像Windows系统,可以比较直观地查看,因此要使用命令行操作来显示。

    查看当前路径下各文件夹大小

    利用du命令(disk usage)

    du -sh : 查看当前目录总共占的容量,而不单独列出各子项占用的容量;
    du -sh ./* : 单独列出各子项占用的容量。

    以上命令需要在root权限下操作,或者在命令行前加sudo命令也可以。

    用到了两个参数来控制命令du

    -h:以K,M,G为单位,提高信息的可读性
    -s:仅显示总计

    查看磁盘剩余空间

    利用df命令

    df -hl [目录名] :查看磁盘剩余空间

    其他

    du命令的一些常用参数:
    -a或-all 显示目录中个别文件的大小
    -b或-bytes 显示目录或文件大小时,以byte为单位
    -c或–total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和
    -D或–dereference-args 显示指定符号连接的源文件大小
    -h或–human-readable 以K,M,G为单位,提高信息的可读性
    -k或–kilobytes 以1024 bytes为单位
    -l或–count-links 重复计算硬件连接的文件
    -L或–dereference 显示选项中所指定符号连接的源文件大小
    -m或–megabytes 以1MB为单位
    -s或–summarize 仅显示总计
    -S或–separate-dirs 显示个别目录的大小时,并不含其子目录的大小
    -X<文件>或–exclude-from=<文件>
    –exclude=<目录或文件> 略过指定的目录或文件
    –max-depth=<目录层数> 超过指定层数的目录后,予以忽略

    借鉴

    https://blog.csdn.net/matrix_laboratory/article/details/47007501
    https://blog.csdn.net/wangjunjun2008/article/details/19840671

    展开全文
  • linux查看当前目录下文件大小

    万次阅读 2019-06-20 11:06:23
    使用df 命令查看当前磁盘使用情况: 1 2 3 4 5 6 7 8 9 jack@jiaobuchong:~$df-lh Filesystem Size Used Avail Use% Mounted on /dev/sda3...
  • 获取指定路径下目录或文件大小

    千次阅读 2016-08-22 21:37:24
    double totalSize = getDirSize(new File("f:\\电影")); public static double getDirSize(File file) { //判断文件是否存在 if (file.exists()) { //如果是目录则递归计算其内容的总大小
  • 要获得目录(包括子目录)所有文件名,路径文件大小用shell应该是最简便的 shell脚本: lsdir.sh #!/bin/bash function ergodic(){ for file in `ls $1` do if [ -d $1"/"$file ] then ergodic $1"/"$...
  • du -sh * 查看当前目录下文件大小

    千次阅读 2019-01-14 18:35:10
    du -sh *
  • 文章目录查看当前目录各个文件及目录占用空间大小查看文件的总数目和更详细的内容查看指定文件大小Linux统计当前目录文件数量(不包含子目录中的文件)ubuntu如何查看目录和文件的数量以及查找包含指定...
  • MFC串口通信由于用到了mscomm32.ocx控件,在没有注册的电脑上可能无法运行,现需要将mscomm32.ocx移动到C:\Windows\SysWOW64(64位机器)目录进行注册,但每换台电脑若都手动移动-注册过于麻烦,故用批处理方式实现其...
  • 查看服务器磁盘空间使用情况,快速定位当前目录的大文件夹,快速找出大文件
  • 1.查看当前文件目录各个文件夹大小 du -h --max-depth=1 查看指定目录du -h --max-depth=1 /path 2. 查看当前目录所有目录及子目录大小 du -h - . “.”代表当前目录。也可以换成一个明确的路径 -h表示用...
  • eclipse快速找到当前文件路径

    万次阅读 2018-07-18 08:42:23
    属性 在所选择的项目上右击 ,点击属性(properties),出现图: ...Size:此文件大小 Last modified:最后修改的时间 Text file ecoding:此文件的编码,默认GBK,可以修改为UTF-8 快捷键    快...
  • Linux生成core文件、core文件路径设置

    万次阅读 多人点赞 2017-05-08 20:51:51
    1.设置core文件大小 列出所有资源的限制: ulimit -a ulimit -a.png 或者查看core file size: ulimit -c core file size: unlimited:core文件的大小不受限制 0:程序出错时不会产生core文件 1024:代表1024...
  • (1)获取当前可执行文件路径: #include #pragma comment(lib, "shlwapi.lib") wchar_t szExePath[MAX_PATH] = {0}; GetModuleFileNameW(NULL, szExePath, sizeof(szExePath)); PathRemoveFileSpecW(szExePath);
  • common lisp中获取当前文件路径

    千次阅读 2015-02-05 16:06:52
    1,直接获取当前文件夹的路径: (print (probe-file ".") ) 2.或许打开文件大小: (let ((file (open "hello.c" :if-does-not-exist nil))) (print (file-length file)) (close file) ) 3.获取打开文件中的...
  • 将下载的 ls.exe 文件放入C:\Windows\System32目录,或者通过环境变量设置,按 WIN+R 打开命令窗口,就可像dir一样使用ls命令显示指定目录所有文件大小,如“ls”显示当前目录所有文件的名称,最后修改时间...
  • 说实话,我是为了混个持之以恒的标签的 = =,谁叫我过年都没怎么写呢!!!! ...* 书本:【Qt5开发及实例】 * 功能:得到文件大小和目录的路径 * 文件:main.cpp ...//根据给的路径得到文件大小和目录
  • grep查找路径下所有文件内容

    万次阅读 2016-08-18 18:33:26
    一、需求描述  /etc目录包含了多个...但find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。无法查找文件内容 ,满足不了上述需求。  此时,我们可以考虑用g
  • [cpp] view ...1. 获取Debug或Release所在的路径  CString GetModuleDir()  {   HMODULE module = GetModuleHandle(0);   char pFileName[MAX_PATH];   GetModuleFileName(module, pFi
  • Windows GetModuleFileNameA( _In_opt_ HMODULE hModule, _Out_writes_to_(nSize,((return &amp;lt; nSize) ? (return + 1) : nSize)) LPSTR lpFilename, _In_ DWORD nSize ); 该函数用于检索包含指定...
  • # 获取目录下文件大小并计算文件大小总和 import os import os.path list1 = [] def get_size(path): fileList = os.listdir(path) # 获取path目录所有文件 for filename in fileList: pathTmp = os.path.join...
  • 1. 参考下面链接学习statfs()函数的用法: ...   statfs函数使用说明 ... 查询文件系统相关的信息。  用法:  #include /* 或者 */  int statfs(const char *path, struct statfs
  • * 功能说明:通过递归实现ftp目录文件与本地文件同步更新 * * @param ftpfilepath 当前ftp目录 * @param localpath 当前本地目录 */ public void ftpDownFiles(String ftpfilepath, String localpath) { try...
  • 1.设置core文件大小 列出所有资源的限制: ulimit -a ulimit -a.png 或者查看core file size: ulimit -c core file size: unlimited:core文件的大小不受限制 0:程序出错时不会产生core文件 1024:代表1024k,...
  • C语言根据路径打开文件内容

    千次阅读 2015-11-30 20:32:00
    void openFile(){ FILE *fp; char ch; // 设置字符串的大小,视情况可以加大 char str[1000] = {};... // 设置文件路径并判读是否可以打开文件 if((fp = fopen("/Users/dllo/Desktop/file.txt", "rt")) == NULL)
  • //返回指针偏离文件头的位置(即文件中字符个数) return n; } bool exist(const char * lpPath){ /* Check for existence */ if( (_access( "ACCESS.C", 0 )) != -1 ) { return true; }else{ return ...
  • * 获取某个文件夹的所有文件 * * @param fileNameList 存放文件名称的list * @param path 文件夹的路径 * @return */ public static void getAllFileName(String path,ArrayList&lt;String&gt; ...
  • 查找某个路径下的大文件并删除

    千次阅读 2014-04-10 15:50:07
    在项目中,升级时发现磁盘空间已满,此时,必须得删除无用的,占用空间较大的文件。 删除前,得找到那些满足一定大小文件   查找根目录大于5000KB的文件 find / -type f -size +50000k
  • bat中获取当前路径

    千次阅读 2020-02-28 17:15:58
    echo 当前正在运行的批处理文件所在路径:!cd! pause @echo off echo 当前目录是:%cd% pause @echo off :: set "abc=%cd%" echo 当前正在运行的批处理文件所在路径:%~dp0 pause @echo off echo 当前的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 451,807
精华内容 180,722
关键字:

当前路径下的文件大小