[英]Batch File To Delete Folders Not Contained In a List
我有一組我想保留的文件夾,並想刪除其余的文件夾。 我有一個 .txt 文件,其中包含我想保留的文件夾的名稱。
所以這就是我所擁有的:
在C:\\test
我有以下文件夾:
AAA
BBB
CCC
DDD
EEE
在我的文本文件exclude.txt
我列出了以下文件夾名稱:
AAA
BBB
CCC
因此,我希望我的最終產品是C:\\test
在批處理文件之后應該只有文件夾AAA
、 BBB
和CCC
。
這是我到目前為止所擁有的但沒有任何運氣:
for /d %%a in ("C:\test\*") do findstr /i /x /c:"%%~nxa" exclude.txt || rd /s /q %%a
看起來你很接近。 以下對我有用...(只是在您的目錄名稱中添加了一個 '\\' 字符)
for /d %%a in ("C:\test\*") do findstr /i /x /c:"%%~nxa" exclude.txt || rd /s /q %%a
我和上面那個人有同樣的問題,它只適用於我的排除文件中的第一行。
過了一會兒,我意識到我的排除列表中的最后一行實際上並沒有起作用,但是因為我只用 2 行測試它,所以我無法區分。
當我將真實數據與 84 個排除項一起放入時,我意識到發生了什么,我的解決方法是在文件末尾放置一個虛擬排除項,但知道它無論如何都會被忽略
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.