2017-07-07 37 views
0

工作下面的代碼工作時version.txt9或更大(測試98至101和按預期工作):批量備份,從文本文件中讀取數不爲值低於9

set /p Build=<version.txt 
set /a NewBuild=%Build%+1 
set TMP=backup_%Build% 
if not exist "%TMP%" (
    @echo %NewBuild%> version.txt 

    mkdir "%TMP%" 
    cd "%TMP%" 
    for /r "C:\xampp\htdocs\testzone\main" %%F in (*.*) do (
     cls 
     if exist "%%F" (
      if not exist "%%~nxF" (
       xcopy /h "%%F" "%%~nxF" 
       pause > nul 
      ) 
     ) 
    ) 
) 

但它不適用於值1, 2, 3, 4, 5, 6, 7 or 8,當我運行代碼從1到8的數字創建文件夾,並且所有內容都被正確複製,但version.txt更改爲空文件。

回答

1

變化

@echo %NewBuild%> version.txt 

> version.txt @echo %NewBuild% 

一個sungle數字轉向器使裝置#N的重定向直接前(1 =標準輸出,2 =標準錯誤,0 = stdin中,不使用其他。

+0

現在它將'version.txt'變成一個空文件1到8,甚至大於8的數字 – ajax333221

+0

我設法使用'(@echo%NewBuild%)> version.txt' – ajax333221