0

我必须收集有关这两个目录(dir)的信息。第一个目录包含名称为 1.txt、3 txt、5.txt 的文件,第二个目录分别为 2.txt、4.txt、6.txt。并将输出重定向到另一个文件。文件的内容无关紧要。之后,我必须按字母顺序对文件进行排序。

接下来,我将获取前三个文件并通过绝对路径删除它们,这意味着从第一个目录中删除名为 1.txt 3.txt 的文件,从第二个目录中删除文件 2 。 文本。

我们不知道目录中的文件名。

谁能帮我?

@echo off
cd MainDirectory
dir /d folder1 folder2  > paths.txt
findstr /l "Diskname:" paths.txt > sorted.txt
del paths.txt
dir /b folder1 folder2 > paths.txt
findstr /l ".txt" paths.txt > minifiles.txt
del paths.txt

sort /+1 minifiles.txt > pathfiles.txt
del minifiles.txt

::next string give me just one absolute path. Last path. Path to the folder2
for /F "tokens=3 delims= " %%i in (sorted.txt) do @echo %%i > sortedFINAL.txt

::next string assigns the tmp a value : absolute path Diskname:\....\\...\folder2
For /F "Delims=" %%I In (sortedFINAL.txt) Do Set tmp=%%~I

echo %tmp%
pause
4

1 回答 1

0
dir folder1 /b >>files.txt
dir folder2 /b >>files.txt
del folder1\1.txt /f /q
del folder1\3.txt /f /q
del folder2\2.txt /f /q

如果您想了解有关目录的更多详细信息,可以从中删除/b开关。dir

于 2012-12-15T12:19:52.680 回答