bat命令遍历文件夹下指定后缀的文件但不包括子文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bat命令遍历文件夹下指定后缀的文件但不包括子文件夹相关的知识,希望对你有一定的参考价值。

bat命令遍历 当前文件夹和指定目录下 指定后缀的文件,但是不包括子文件夹

@echo off
::设置指定目录,多个目录用英文逗号隔开,如果路径中有空格,请给该路径加上英文双引号
set dir=

::设置指定后缀名,多个后缀用英文逗号隔开,同样有空格的要用英文双引号括起来
set ext=

for %%a in ("%cd%",%dir%) do (
    pushd "%%~a"
    for %%b in (%ext%) do (
        for /f "delims=" %%c in ('dir /b "%%~b"') do echo "%%~c"
    )
    popd
)
pause

参考技术A 要想包括子文件夹,还需要指定一个选项: /s 。追问

不包括子目录

追答

你可以尝试着配合 find 命令进行管道的输入、输出操作,看看能否过滤掉所有子目录?
例如:在命令提示符下,输入:dir * | find "" ,即可列出所有的子目录。但是再更进一步的试验我还没有做过。

参考技术B dir /b /a:d .

php 获取文件目录下的文件和子文件 包括显示出指定的文件名后缀文件。

 1 /* 获取文件目录下的文件和子文件*/
 2 
 3 function getfile($path){
 4     
 5     foreach(glob($path.‘\*‘ as $file)){
 6        
 7         echo $file;
 8 //判断$file 是否是目录 ,是目录递归再次遍历
 9     if(is_dir($file)){
10            getfile($path) 
11           
12         }
13     }
14 
15 }
16 
17 
18 /*获取文件目录下指定后缀名的文件*/    
19 
20 
21 function getFileName($path){
22       
23        foreach(glob($path.‘\*‘ as $file)){
24          $i = 0;
25          if(preg_match(‘/.png$/‘,$file)){
26              $fileArr[$is] = $file;
27              print_r($fileArr); 
28            }
29            if(is_dir($file)){
30            getFileName($path);
31        }
32 
33 
34     }
35 
36 
37 }
38                 

 

以上是关于bat命令遍历文件夹下指定后缀的文件但不包括子文件夹的主要内容,如果未能解决你的问题,请参考以下文章

php 获取文件目录下的文件和子文件 包括显示出指定的文件名后缀文件。

C#如何遍历指定目录以及指定目录下所有子文件夹,并获取除指定文件类型以外的所有文件的绝对路径?

bat命令,如何只遍历当前文件夹及下一层子文件夹

bat删除当前目录指定后缀的文件夹?

bat怎样删除指定文件夹内的指定后缀文件?

bat命令 遍历目标文件夹下的所有文件,并输出文件名,如果是在子文件夹下,则还要输出文件夹的名字