Re: [請問] 如何將同一目錄下多個資料夾的檔案抓到 …

看板EzHotKey作者 (家瑀 致中和)時間16年前 (2008/08/21 18:54), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
※ 引述《nowanthave (....)》之銘言: : 因為常常在下載檔案時,會一次下載很多個資料夾 : 整理時想要把相同類型的檔案放在同一個資料夾 : 手動操作又很花費時間,所以想問看看有沒有辦法? : 感謝 用 AutoHotKey 只要 9 行就可以輕易寫出來了喔~~ http://www.autohotkey.com/ 我寫的這個程式可以移動指定副檔名的檔案,可惜重複檔名的檔案不會被移動就是了... 安裝好 AutoHotKey 之後,新增一個純文字檔,然後將程式碼貼上, 另存成 .ahk 檔,再點兩下執行就可以了。 記得保留這個程式碼的作者和來源資訊唷~~ 本程式作者: VElysian,發表於 telnet:\\ptt.cc EzHotKey 板 ─────────────────────────────────── 程式說明: 例如要移動 D:\1 的 txt 檔案到 D:\2 1. Win + Q 開始執行 2. 選擇檔案所在資料夾(如 D:\1) 3. 輸入要移動的副檔名(如 txt ) 4. 選擇目標資料夾 (如 D:\2) 5. 操作完成 ─────────────────────────────────── 程式碼如下: ;本程式作者: VElysian,發表於 telnet:\\ptt.cc EzHotKey 板 #Q:: ; Win + Q 開始執行 FileSelectFolder , sourceFolder ,,, 選擇檔案所在資料夾 InputBox , extension ,, 輸入要移動的副檔名,,,,,,,, txt FileSelectFolder , targetFolder ,,, 選擇目標資料夾 Loop , %sourceFolder%\*.* , 2 , 1 ;Loop 開始,搜尋 sourceFolder 下所有檔案 { FileMove , %A_LoopFileDir%\*.%extension% , %targetFolder% ;移動檔案 } ;Loop 結束。 MsgBox , 操作完成。`n`n程式作者: VElysian,發表於 ptt.cc EzHotKey 板 return ; Win + Q 結束 ─────────────────────────────────── 流程說明: sourceFolder 變數,存放檔案所在資料夾的路徑。(如 D:\1) targetFolder 變數,存放目標資料夾的路徑。 (如 D:\1) extension 變數,存放副檔名。 (如 txt ) 第一個 FileSelectFolder 會將選擇的路徑放進 sourceFolder 變數。 第二個 FileSelectFolder 會將選擇的路徑放進 targetFolder 變數。 InputBox 會讓使用者輸入副檔名,放進 extension 變數。 Loop 會搜尋 sourceFolder 和其子資料夾下所有檔案。 然後把符合 extension 的檔案移到 targetFolder ─────────────────────────────────── 指令說明: FileSelectFolder FileSelectFolder , 變數 , 指定路徑, 參數, 顯示文字 讓使用者選擇指定路徑下的資料夾,然後把絕對路徑放進變數中。 如果把絕對路徑省略,預設是從我的電腦開始。 參數:  0 沒有(預設值)     1 允許新增資料夾     2 0 多了一個輸入欄位     3 1 多了一個輸入欄位 例如: FileSelectFolder , myPath , D:\ , 2 , 請選擇資料夾 MsgBox , 您選擇的路徑是 %myPath% 更多資訊: http://www.autohotkey.com/docs/commands/FileSelectFolder.htm FileMove FileMove , 來源路徑(支援 *) , 目標路徑 , 參數 會將來源路徑的檔案移動到目標路徑。支援萬用字元 *.* 參數0 不覆蓋已存在檔案(預設值)。 1 覆蓋已存在檔案。 例如: FileMove , D:\1\*.txt , D:\2 更多資訊: http://www.autohotkey.com/docs/commands/FileMove.htm Loop (檔案 & 資料夾) Loop , 指定路徑(一定要用萬用字元 *) , 搜尋條件 , 是否搜尋子資料夾 { ...有很多變數可以用... } 會搜尋指定路徑的檔案或資料夾。指定路徑一定要使用萬用字元 *.* 搜尋條件0 只搜尋檔案(預設值) 1 搜尋所有檔案和資料夾 2 只搜尋資料夾 是否搜尋子資料夾0 只搜尋目前路徑下的資訊 1 連子目錄下的資料都會搜尋 {...} 中可以用的變數: A_LoopFileName 檔案名稱。 如 321.txt A_LoopFileFullPath 檔案路徑。 如 D:\1\321.txt A_LoopFileDir 資料夾路徑。如 D:\1 例如: Loop , D:\1\*.* { MsgBox , 檔案名稱: %A_LoopFileName% } 更多資訊: http://www.autohotkey.com/docs/commands/LoopFile.htm InputBox InputBox , 變數 ,, 顯示文字 ,,,,,,,, 預設值 出現一個輸入視窗,顯示文字提示要輸入什麼東西,輸入欄有文字的預設值。 輸入的文字會被放入變數中。 例如: InputBox , text ,, 請輸入你的名字 ,,,,,,,, 小明 Msgbox , 嗨~~ %text%~~ 更多資訊: http://www.autohotkey.com/docs/commands/InputBox.htm ─────────────────────────────────── 教學完畢,希望對你有幫助。 ^_^ -- 戰略高手 遊戲, 數位, 程設 [jzs/lostname DigitalWare 軟體 Σ軟體 應用 技巧 [lostname] EzHotKey 軟體 ◎簡化複雜工作的快速鍵軟體 VElysian EzHotKey 主要討論一種可以把複雜的滑鼠鍵盤動作變成簡單的快速鍵的軟體。 例如: 重複的剪下貼上,或是將滑鼠調整音量的動作簡化成只按 +/- 鍵。 包括: AutoHotKey、AutoIt、EZScript、VBScript、Windows 批次檔。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.111.12 ※ 編輯: VElysian 來自: 61.62.111.12 (08/21 19:33) ※ 編輯: VElysian 來自: 61.62.111.12 (08/21 19:35)

08/21 22:08, , 1F
感謝板主的教學^^ 來研究一下
08/21 22:08, 1F
文章代碼(AID): #18hKbrXv (EzHotKey)
文章代碼(AID): #18hKbrXv (EzHotKey)