Windows 目录拆分
有一个目录需要分为两部分,即将某些文件和子目录重新定位到新目录 有两个列表:A->要保留在原始目录中的文件和子目录列表 B->要重新定位到新目录的文件和子目录列表 在重新定位之前,我想确认这两个列表一起包含原始目录中的所有文件和子目录 我无法理解编写此验证脚本的逻辑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
有人能建议我怎么做吗?假设列表文件包含文件名,因为它们位于同一文件夹中,不需要路径,则此命令
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,因为问题询问一个文件夹文件的内容以及其中需要拆分的文件夹。在这种情况下,不需要递归搜索,也不需要列表中的完整路径。如果这不是真实情况,请使用真实要求和两个文件内容的示例更新您的问题。