0
我正在嘗試執行以下操作, Verify.exe會抓取目錄結構並逐個檢查文件是否有任何缺陷。文件被傳遞給verify.exe作爲命令行參數。如果在文件中發現任何缺陷,它將打印一個錯誤代碼(一行字符串)。如果文件合法,則不會打印任何內容我想爲每個錯誤代碼創建一個文件夾,並將錯誤的文件複製到該文件夾,以便我可以查看它。如果文件沒有錯誤,則不做任何事情。如何根據程序的輸出製作目錄並將文件複製到它們中
需要檢查的文件位於D:\ Test \ docs \ r1 - 出於測試目的,我在D:\ Test \ docs \ r1中只有一個文件。
::@echo off
CD D:\Test\doc\r1\
FOR /R %%a IN (*) DO (
ECHO %%a
FOR /F %%b IN ('D:\Test\doc\Verify.exe /i:"%%a"') do SET MyVAR=%%b
IF NOT "%MyVAR%" == "" (
ECHO "IF one"
IF EXIST D:\Test\doc\%MyVAR% (
ECHO "IF two"
MD D:\Test\doc\%MyVAR%
)
COPY %%a D:\Test\doc\%MyVAR%
)
SET MyVAR=
ECHO "------------------------"
)
我在命令行上得到以下回顯。創建
D:\Test\doc>CD D:\Test\doc\r1\
D:\Test\doc\r1>FOR /R %a IN (*) DO (
ECHO %a
FOR /F %b IN ('D:\Test\doc\Verify.exe /i:"%a"') do SET MyVAR=%b
IF NOT "" == "" (
ECHO "IF one"
IF EXIST D:\Test\doc\ (
ECHO "IF two"
MD D:\Test\doc\
)
COPY %a D:\Test\doc\
)
SET MyVAR=
ECHO "------------------------"
)
D:\Test\doc\r1>(
ECHO D:\Test\doc\r1\A5 Incident Management.doc
FOR /F %b IN ('D:\Test\doc\Verify.exe /i:"D:\Test\doc\r1\A5 Incident Management.doc"') do SET MyVAR=%b
IF NOT "" == "" (
ECHO "IF one"
IF EXIST D:\Test\doc\ (
ECHO "IF two"
MD D:\Test\doc\
)
COPY D:\Test\doc\r1\A5 Incident Management.doc D:\Test\doc\
)
SET MyVAR=
ECHO "------------------------"
)
D:\Test\doc\r1\A5 Incident Management.doc
D:\Test\doc\r1>SET MyVAR=0x8004170b
"------------------------"
D:\Test\doc\r1>
有人能幫助我在以下問題..
- 的循環已經跑三圈
- 沒有文件夾
- 似乎有在指定的exe命令行輸出的問題到MyVar
謝謝您提前