[批次] 如何寫出一個具有過濾功能的批次檔(移動不包含某個關鍵字的

看板EzHotKey作者 (探員型不型)時間16年前 (2010/02/22 14:41), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
(終於找到windows版啦~想不到PTT有那麼多高手在討論批次檔) 我用一個軟體下載檔案,例如R:磁區內有 _incomplete_00001111.mp3 _incomplete_aaaabbbb.mp3 _incomplete_bcdefghi.mp3 cccdddeeefff.mp3 ddeeffgghhii.mp3 efghijklmnop.mp3 這幾個檔案,其中檔名帶有 _incomplete_ 字樣的表示還沒下載完成, 如果下載完成,程式會自動把_incomplete_關鍵字拿掉(自動重新命名) 我想寫一個批次檔是,移動已經下載完成的檔案到其他磁區 (意思就是移動*.mp3但是不包含_incomplete_*.mp3) 就是想在 move R:\*.mp3 E:\download\ 這行指令內加入,排除 _incomplete_ 為開頭的檔案 請問該怎麼寫才對? 之前我在別的版發問過,他給的答案是這樣 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 ) ) 但是這樣行不通...=.=a -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.86.210

02/22 16:21, , 1F
dir /b *.mp3 | find /V "_incomplete"
02/22 16:21, 1F

02/23 16:24, , 2F
謝謝,列是列出了,但是還在研究怎麼搭配move或xcopy....
02/23 16:24, 2F

02/23 16:30, , 3F
另外還有/v能搭配兩個以上的關鍵字嗎?
02/23 16:30, 3F

02/23 22:02, , 4F
for( dir的結果 ) { for( 要排除的關鍵字 ) { 處理動作 } }
02/23 22:02, 4F

02/24 13:22, , 5F
兩個以上關鍵字用Findstr
02/24 13:22, 5F
文章代碼(AID): #1BWYSn6l (EzHotKey)
文章代碼(AID): #1BWYSn6l (EzHotKey)