[英]Get inverse list of files through dir command in batch
我正在嘗試以相反的順序獲取子文件夾的文件列表:
為/ f“ tokens = *” %% f in('dir / s / b / o-n')執行(回顯%% f)
我得到這個結果folder1 \\ file2,folder1 \\ file,folder2 \\ file2,folder2 \\ file1,folder3 \\ file2,folder3 \\ file1
我想獲得文件夾和文件中的倒序,而不僅僅是文件夾中的文件。 像這樣的文件夾3 \\文件2,文件夾3 \\文件1,文件夾2 \\文件2,文件夾2 \\文件1 \\,文件夾1 \\文件2,文件夾1 \\文件1
我怎樣才能做到這一點?
嘗試這個
for /f "tokens=*" %%f in ('dir /s /b /o-n')
do (
SET OUTPUT=%OUTPUT%, %%f
)
echo %OUTPUT%
運行第一個循環以獲取第一級子目錄,然后在每個目錄上運行you命令
@echo off
for /f "tokens=*" %%f in ('dir c:\temp\so\ /b /o-n /AD') do (call :filesOf %%f)
:next
echo next
pause
:filesOf
echo "files for ******** %1 *********"
if ("%1"=="") goto next else(
for /f "tokens=*" %%i in ('dir c:\temp\so\%1 /s /b /o-n ') do echo "***%%i***"
)
很難處理多級子目錄
@echo off
for /f "tokens=*" %%f in ('dir /s /b /o-n') do (echo %%f >> tempfile.123)
C:\Windows\System32\sort.exe /R tempfile.123
del tempfile.123
這只是將您的文件回顯到臨時文件,然后重新顯示它。 抱歉,無法找到sort.exe的完整路徑,但我安裝了cygwin。 如果您想要適當的臨時文件名,我建議您使用此http://unserializableone.blogspot.com/2009/04/create-unique-temp-filename-with-batch.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.