我必须收集有关这两个目录(dir)的信息。第一个目录包含名称分别为1.txt,3txt,5.txt,第二个目录的文件,分别为2.txt,4.txt,6.txt。并将输出重定向到另一个文件。文件内容无关紧要。 之后,我必须按字母顺序对文件进行排序。
接下来,我将获取前三个文件并通过绝对路径删除它们,这意味着,从第一个目录中删除名为1.txt 3.txt的文件,然后从第二个目录中删除文件2.txt。
我们不知道目录中的文件名。
谁能帮帮我?
@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
答案 0 :(得分: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
开关。