2014-03-05 108 views
1

我需要一種方法來創建一個包含文件名的目錄,但是每創建一個目錄都計數+1。批處理文件重命名和目錄自動掛載

我怎麼能在創建

例如目錄名稱前加上+1:

如果Directory 1_xxx存在化妝2_xxxxx

目前我使用下面的文件名

創建一個目錄

文件名,例如:Card_24ALL Sms.csv

目錄輸出如:Card_24ALL短信

目前我有目錄添加+1手動1_

1_Card_24ALL SMS(使用文件Card_24ALL Sms.csv內複製)

2_Card_25ALL SMS(使用文件Card_25ALL Sms.csv內複製)

3_Tjek_24ALL短信(使用文件Tjek_24ALL Sms.csv內複製)

使用下面的代碼,我可以得到目錄添加包含給定文件名:

@echo off 
for %%a in (*.csv) do (
md "%%~na" 2>nul 
move "%%a" "%%~na" 
) 

但我必須手動創建在前面的數字得到number_directory在前面的數字可以99_

回答

1

試試這個:

@echo off 
setlocal enabledelayedexpansion 

@echo off 
cd /d c:\temp 
if exist cnt.txt for /f %%a in (cnt.txt) do set %%a 
for %%a in (*.csv) do (
set /a cnt+=1 
echo md "!cnt!_%%~na" 2>nul 
echo move "%%a" "!cnt!_%%~na" >nul && (
Echo File %%~nxa moved to !cnt!_%%~na) || (Echo Move failed.) 
) 
>cnt.txt echo cnt=!cnt! 

從MD取出回聲的,一旦你驗證移動輸出。

+0

嗨@馬特 好吧我目錄:)欣賞的快速反應。 看到現在我有更多的文件我要補充及以上再重新創建文件夾1_naming 運行可以說,我跑了四個文件,並需要將目錄命名繼續5_1 如: 我用你的代碼跑了四個文件。 所以我就 1_Naming 2_Naming 3_Naming 4_Naming 完美...我收到更多的文件每小時的我怎麼能得到5_naming製成最後一個號碼繼續進行,而不是再次1_naming。 你對此的幫助是讚賞的。 – Bize32

+0

這很簡單。我只是讓它將最後一個計數寫入文件並在腳本運行時讀取它。 –

+0

感謝百萬我會嘗試,現在。謝謝。 – Bize32