作者LPH66 ((short)(-15074))
看板CSSE
標題Re: [問題] 如何寫一個有過濾功能的批次檔?
時間Fri Feb 5 14:48:21 2010
這比較接近 Windows 版負責的範圍了....
嘛, 如果你的檔案沒有太過份的命名的話
for %i in (*.*) do (
if %i GTR _incomplete_zzzzzzzzzzzzzzz (
move R:\%i E:\download\ > nul
) else if %i LSS _incomplete_ (
move R:\%i E:\download\ > nul
)
)
原理就自行在命令列中輸入 for /? 和 if /? 自己看吧
然後只要沒有那種一票 z 開頭的檔案應該是不會出包才對 (出事了就多加一點 z 吧)
----
另外回答一下你的幾個相關問題
Q: copy 和 xcopy 的差別
A: 在早期 DOS 底下, xcopy 是專門用來大量複製檔案的
它會將定量的小檔案一口氣讀進來再一口氣寫入
減少磁碟的 I/O 切換次數
另外還附帶了樹狀目錄結構複製的功能
而 copy 比較早出現 只是用來複製單一檔案用的
由於效率問題才在 DOS 3.x 出現 xcopy 這個指令
嘛, 不過現在 Windows 的 GUI 直接拖個資料夾過去就行了...(遠目)
Q: > nul
A: 這裡 > 的意思是把輸出到畫面上的訊息給轉存到某個檔案裡
(嚴格說來上面這句話不甚精確 不過你這樣理解也不會差到哪裡去)
而 nul 則是一個特別的名字 它放在檔名的地方時可以理解為黑洞 XD
也就是 轉存進去的東西會立刻丟掉
因此 > nul 就成了把訊息丟進黑洞裡 也就是不要顯示訊息
--
再次感覺這兩篇放在 Windows 版比較合適....
--
'Oh, Harry, dont't you
see?' Hermione breathed. 'If she could have done
one thing to make
absolutely sure that every single person in this school
will read your interview, it was
banning it!'
---'Harry Potter and the order of the phoenix', P513
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.24.163
1F:推 willterous:抱歉發錯板...因為找不到適合的板問.謝謝你.我會試試看 02/05 15:09