批处理获取指定根目录下所有文件夹和文件路径

批处理获取指定根目录下所有文件夹和文件路径,第1张

@echo off

set #=q&set/azx=0x53b7e0b4

title Any question +%#%%#% %zx%

cd /d "%~

dp0

"

set "指定目录=E:\"

(for /f "delims=" %%a in ('dir /a/b/s "%指定目录%"') do echo;%%a)>"结果txt"

echo;Any question +%#%%#% %zx%

pause

tree命令列目录

为什么不直接用tree命令,还能显示目录树结构。

C:\>tree /

以图形显示驱动器或路径的文件夹结构。

TREE [drive:][path] [/F] [/A]

 /F   显示每个文件夹中文件的名称。

 /A   使用 ASCII 字符,而不使用扩展字符。

用DOS命令:

(假设你的这个文件夹是c:\pdf)

dir

c:\pdf\pdf

>

c:\pdf\listtxt

运行完之后到目录下去找一个文件名是listtxt的,打开就是文件名了

直接使用C#遍历指定文件夹中的所有文件就可以实现;

参考如下:

DirectoryInfo TheFolder=new DirectoryInfo(folderFullName);

//遍历文件夹

foreach(DirectoryInfo NextFolder in TheFolderGetDirectories())

thislistBox1ItemsAdd(NextFolderName);

//遍历文件

foreach(FileInfo NextFile in TheFolderGetFiles())

thislistBox2ItemsAdd(NextFileName);

如果你有点DOS命令的基础,我下面说的你就能看懂了。

按WIN+R打开运行,输入CMD,按回车,打开DOS窗口

进入你需要统计文件数量的那个目录,如果你不会DOS命令的话,就把文件夹复制到一个盘符根目录下,假设在D盘根目录下,文件夹名"123"

在DOS中依次输入

d:

按回车

cd 123

按回车

这时你就进入这个目录了

dir /s > 1txt

回车之后,会在这个目录里形成一个1txt的文件,文件中包含了你目录及子目录的文件信息

回到资源管理器里打开这个文件,里面就是你想要的东西。

如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。

public class GetFileName

{

public static String [] getFileName(String path)

{

File file = new File(path);

String [] fileName = filelist();

return fileName;

}

public static void getAllFileName(String path,ArrayList<String> fileName)

{

File file = new File(path);

File [] files = filelistFiles();

String [] names = filelist();

if(names != null)

fileNameaddAll(ArraysasList(names));

for(File a:files)

{

if(aisDirectory())

{

getAllFileName(agetAbsolutePath(),fileName);

}

}

}

public static void main(String[] args)

{

String [] fileName = getFileName("F:\\xiaoshuo");

for(String name:fileName)

{

Systemoutprintln(name);

}

Systemoutprintln("--------------------------------");

ArrayList<String> listFileName = new ArrayList<String>();

getAllFileName("F:\\xiaoshuo",listFileName);

for(String name:listFileName)

{

Systemoutprintln(name);

}

}

}

运行时需要更改一下具体的文件夹。

我假设你要复制文件夹D:\ABC下所有的文件,包括子目录下的文件到D盘的CBA文件夹中。

新建文本文件,输入:XCOPY D:ABC\ D:\CBA /S

文件另存为1bat文件,保存类型选择所有文件。

注意:如果文件夹中有空格,则要用双引号把路径括起来。

以上就是关于批处理获取指定根目录下所有文件夹和文件路径全部的内容,包括:批处理获取指定根目录下所有文件夹和文件路径、bat怎么获取文件夹内文件名称,以及子文件夹内文件名称、如何获取某文件夹中所有子文件夹的文件名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存