2014-05-15 28 views
0

所以我有文件,包括像這樣的時間和日期「05_14_2014_17_56_01」。我想按日期排序它們到文件夾中,而不是時間。排序文件到文件夾

所以我試圖做的是得到一個for循環,使一個目錄只使用日期,並將文件放在那裏。但是這些批處理文件的語法正在殺死我。它應該是非常簡單的,但我有很多麻煩。任何人都可以幫助我解決這個問題。

我想這樣的事情最初

setlocal EnableDelayedExpansion 
cd C:\Users\****\Downloads\test 
for %%i in (*csv) do (set fileName= %%i & echo !fileName! & mkdir !fileName:~0,10%! & move %%i !fileName:~0,10%!) 

pause 

回答

1

這不僅是工作,但即使是更好的閱讀:

setlocal EnableDelayedExpansion 
for %%i in ("*.csv") do ( 
set "fileName=%%i" 
echo !fileName! 
mkdir "!fileName:~0,10%!" 
copy "%%i" "!fileName:~0,10%!" 
) 
pause 

我只提取command & command & command個別線路。

啊 - 和我刪除的空間,這將使麻煩(你set命令)

+0

嗨感謝您抽出時間來回答。對於echo,它仍然吐出「!fileName!」。對於mkDir,它只是編號爲10的目錄。而對於複製它說系統找不到指定的文件。我正在使用Windows 7. – user3641499

+0

它的工作很好 - 也在Win7上。嘗試編輯的代碼。 – Stephan

+0

好吧,非常抱歉更新,所以我認爲我的其他電腦有問題。這段代碼大部分工作。現在的問題是複製命令不起作用。它不斷告訴我糟糕的語法。 – user3641499