如何查询某个目录下所有文件的内容

如何查询某个目录下所有文件的内容,第1张

登录Linux系统之后打开终端,确定你要找关键字的目录。我这里就拿root用户来做演示。

2

查看下当前目录下所有的文件,你所要找的关键字就在当前目录下某个文件里面。

3

假如我这里要找的关键字是456,到底他位于哪个文件里面呢?首先我们要先确定是文件,而不是文件夹

find -type f -print这个命令可以列出当前目录下的所有文件。

4

type后面的f是file的意思,所以只列出文件,而排除文件夹。

5

接下来只要在find命令后面加上exec命令就可以实现。

find -type f -print -exec grep 456 {} \;

在查询结果中可以看到456在btxt文件里面出现。

6

exec的意思就是执行find里面的结果,{}用来接收find的结果。注意后面要加上{} \;

66

获取一个目录下的所有文件和目录方法:

import javaioFile;

public class FileTest {

    public static void main(String[] args) {

        /

          将目标目录封装成 File 对象。

         /

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /

          获取目录下的所有文件和文件夹

         /

        String[] names = dirlist();

        for (String name : names) {

            Systemoutprintln(name);

        }

    }

}

通过文件过滤器获取某个目录下的文件,例如所有的 txt、doc文件。

过滤器:

import javaioFile;

import javaioFilenameFilter;

public class FilterByDoc implements FilenameFilter {

    @Override

    public boolean accept(File dir, String name) {

        return nameendsWith("doc");

    }

}

获取某个目录下的按照过滤器规则的所有文件:

import javaioFile;

public class FileTest {

    public static void main(String[] args) {

        /

          将目标目录封装成 File 对象。

         /

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /

          通过过滤器获取目录下的所有的 doc 文件

         /

        String[] names = dirlist(new FilterByDoc());

        for (String name : names) {

            Systemoutprintln(name);

        }

    }

}

希望能对您有所帮助!

n=adir(x,"C:\windows\","D")—— 获取C:\windows文件夹下的所有目录名

for i=1 to n

insert into aa(dirname) values(x(i,1))

next i

参考资料

百度知道百度[引用时间2018-4-5]

shell编程:

如果你为每个文件按日期命名的格式都一致的话,那么”ls -l“命令列出的文件列表就是默认按文件名称(日期先后)排序的。那么最后一个就是最新的,文件名可以用以下方式获取。

filename=‘ls -l | tail -n 1 | awk '{print $9}'’

转移文件用 mv 命令即可

逐条解释:

ls -lt /dirname/

列出此目录下的所有文件并按照时间先后排序

grep filename

过滤出包含关键字的文件

head -n 1

查看排名第一的文件

awk '{print $9}'

打印出第九字段,此处为文件名

解决方案 :使用递归算法进行遍历获取,什么是递归,简而言之就是自己调用自己的一种方法,关于递归算法自行百度。

本例通过递归方法来实现这一需求,输出所有文件夹路径,以及所有Excel文件名。

给定测试目录: C:\Users\admin\Desktop\递归查找,前提是我们不知道该指定文件夹下有多少个子文件夹以及子文件。

测试目录说明:

该目录下创建了需要测试的两级文件目录、以及按文件夹名创建的txt xlsx文件。

首先需要明确目的:根据文件目录、文件夹目录,输出所有文件夹名以及所有Excel文件名,因为无法获知目录深度,所以通过父文件夹层层遍历。

然后进行递归逻辑判断:

找整个递归的终止条件:递归应该在什么时候结束?

找返回值:应该给上一级返回什么信息?

本级递归应该做什么:在这一级递归中,应该完成什么任务?

递归逻辑思考:

1递归应该在什么时候终止?

应该在所有文件夹遍历后无子文件夹存在时终止。

2返回值:

子目录下文件及文件夹的长度(个数)

3本级递归应该完成的任务:

①判断目录下有无文件:如果有,进行遍历文件目录,判断文件扩展名,符合条件的打印输出。

②判断目录下有无文件夹,如果有,遍历文件夹目录,打印输出文件夹名。

定义参数Path_Find,初始目录为:C:\Users\admin\Desktop\递归查找

Step1: 判断文件目录长度

if(length>0)不为空,遍历文件目录,判断文件扩展名,打印输出满足条件的文件名。循环结束后,判断文件夹目录;

else为空,判断文件夹目录。

Step2 :判断文件夹目录长度

If(length>0),不为空,遍历文件夹目录,打印子文件夹名。再进行调用自身,继续判断文件目录,不断遍历循环。

Else,为空,不 *** 作。

其中Invoke Workflow File调用自己时,参数Path_Find为子文件夹路径

补充说明:NET有内置搜索方法,方法见微软官方文档 >

以上就是关于如何查询某个目录下所有文件的内容全部的内容,包括:如何查询某个目录下所有文件的内容、java怎么获取一个目录下的所有文件名、VFP程序获取某一目录下的所有文件夹名,并保存到dbf表里的代码怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9497680.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存