Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 目录拆分_Windows_Batch File - Fatal编程技术网

Windows 目录拆分

Windows 目录拆分,windows,batch-file,Windows,Batch File,有一个目录需要分为两部分,即将某些文件和子目录重新定位到新目录 有两个列表:A->要保留在原始目录中的文件和子目录列表 B->要重新定位到新目录的文件和子目录列表 在重新定位之前,我想确认这两个列表一起包含原始目录中的所有文件和子目录 我无法理解编写此验证脚本的逻辑 有人能建议我怎么做吗?假设列表文件包含文件名,因为它们位于同一文件夹中,不需要路径,则此命令 dir /b | findstr /l /v /x /i /g:list1 | findstr /l /v /x /i /g:list2

有一个目录需要分为两部分,即将某些文件和子目录重新定位到新目录

有两个列表:A->要保留在原始目录中的文件和子目录列表

B->要重新定位到新目录的文件和子目录列表

在重新定位之前,我想确认这两个列表一起包含原始目录中的所有文件和子目录

我无法理解编写此验证脚本的逻辑


有人能建议我怎么做吗?

假设列表文件包含文件名,因为它们位于同一文件夹中,不需要路径,则此命令

dir /b | findstr /l /v /x /i /g:list1 | findstr /l /v /x /i /g:list2
应返回两个列表中均不包含的文件列表


它所做的是枚举所有文件,过滤列表,搜索不在列表1中的元素,然后过滤列表中不在列表2中的元素

您是否尝试将这些列表写入一个文件,使用sort对其进行排序,并将该目录的fc与排序文件列表dir/b/o:n进行比较?它们必须匹配。本质上这很容易——但这取决于文件中的内容。每行都有d:\folder\file.ext?问题是我的列表没有每行都有d:\folder\file.ext。还列出了要重新定位的文件夹。我想确认所有文件夹和文件都存在。我有一个问题。假设列表1中有M:\Folder1\Folder2\somefile.txt,它将与dir/b/s输出中的M:\Folder1\Folder2\somefile.txt匹配,但我的列表中没有M:\Folder1\的条目,但它将出现在dir/b/s输出中。如何删除这些条目?@user3437212,答案中的代码不使用任何/s,因为问题询问一个文件夹文件的内容以及其中需要拆分的文件夹。在这种情况下,不需要递归搜索,也不需要列表中的完整路径。如果这不是真实情况,请使用真实要求和两个文件内容的示例更新您的问题。