Re: [請問] 光碟裡的資料名、檔案名

看板EzHotKey作者 (家瑀 致中和)時間16年前 (2008/08/18 23:12), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《scsnake (飄萍)》之銘言: : 我想要求個script 主要是第一步不太清楚有什麼函數可以用 : 1.讀取光碟第一層的目錄名及檔案名:例如有001、002兩個資料夾及003.mp3這個檔案 : 2.在一個excel檔裡全部取代: : 字串"/001/","/002/","/003.mp3/"(也就是第一個步驟的名稱 前後各加一個/) : 全部取代為某個數字(事實上是光碟的名稱 不過可以手動改) : 我會一點autoit的皮毛 不過不限用哪種語言寫 :P : 或者可以提示一下怎麼做出第一個步驟@@? 用 AutoHotKey 可以寫得出來唷~~ http://www.autohotkey.com/ 安裝好 AutoHotKey 後,新增一個純文字檔,打好程式碼後,存成 .ahk 檔。 再點兩下執行就好了。 ════════════════════ FileSelectFolder: 出現一個視窗讓使用者指定要搜尋的目錄。 folderPath : 被指定的目錄路徑會放在這個變數裡(例: E:\temp)。 Loop  : AutoHotKey 的迴圈,用於重複的動作,有許多用法。 A_LoopFileName : Loop 的內建變數,存放檔案名稱/資料夾名稱。 text : 存放文字的變數。 FileAppend : 把文字加在目標檔案尾端(檔案不存在則會自動建立)。 流程: 藉由 FileSelectFolder 擷取目錄的路徑放到 folderPath 變數中, 然後將 folderPath 的內容丟進 Loop 迴圈。 再利用 Loop 的內建變數 A_LoopFileName 內含的檔案/資料夾名稱。 做一些處理(這裡你是要在前後加上「/」符號)之後丟進 text 變數。 最後將 text 的內容用 FileAppend 指令寫入文字檔。 要修改處理的程式只要修改 Loop 裡面就可以了。 ════════════════════ #Q:: ; Win + Q 執行以下指令 FileSelectFolder , folderPath , , 0, ;選擇搜尋的資料夾。 ;資料夾路徑會放入 folderPath 變數。 Loop , %folderPath%\*.* , 1 , 1 ;搜尋 folderPath 目錄下的資訊。 { ; Loop 開始 text = ;將 (...) 的東西丟進 text ( ;多行文字用小括號包起來 /%A_LoopFileName%/ ;將檔案/資料夾名稱前後加上 / 這一行沒東西表示換行字元 ) FileAppend , %text% , C:\AHKLog.txt ;將 text 寫入 C:\AHKLog.txt } MsgBox , 工作完成 ;顯示工作完成的資訊 return ; Win + Q 指令結束 ════════════════════ FileSelectFolder http://www.autohotkey.com/docs/commands/FileSelectFolder.htm FileSelectFolder , 存放變數 , 預設資料夾, 參數 , 顯示文字 讓使用者選擇資料夾,資料夾路徑會放進存放變數中。 如果有設定預設資料夾,則只能夠選擇該資料夾以及以下的資料夾。 顯示文字會出現在視窗的標題,可以提供說明。 參數: 0 只能夠選擇資料夾。(沒設定也是這個) 1 允許新增資料夾。 2 0 加上輸入視窗。 3 1 加上輸入視窗。 Loop (搜尋檔案/資料夾的資訊) http://www.autohotkey.com/docs/commands/LoopFile.htm Loop , 路徑(支援萬用字元 *), 搜尋檔案 or 資料夾 , 是否搜尋子資料夾資訊 { 有很多變數可以用 } 路徑: 例如 C:\*.* 或 D:\*.txt 或 E:\temp\*.* 或 F:\123*.mp3 搜尋檔案 or 資料夾: 0 只搜尋檔案 1 檔案及資料夾皆搜尋 2 只搜尋資料夾 例如我只要修改資料夾名稱,那麼選擇 2 就可以了,其他依此類推。 是否搜尋子資料夾資訊: 0 只搜尋當前資料夾,子資料夾內的檔案一律不管。 1 全部檔案包括子資料夾也要搜尋。 有很多變數可以用: A_LoopFileName 檔案/資料夾名稱(含有副檔名) A_LoopFileFullPath 檔案/資料夾完整路徑 A_LoopFileSize 檔案大小 其他更多變數請參考 http://www.autohotkey.com/docs/commands/LoopFile.htm ════════════════════ 寫完了,希望對你有幫助。 ^_^ -- 戰略高手 遊戲, 數位, 程設 [jzs/lostname DigitalWare 軟體 Σ軟體 應用 技巧 [lostname] EzHotKey 軟體 ◎簡化複雜工作的快速鍵軟體 VElysian EzHotKey 主要討論一種可以把複雜的滑鼠鍵盤動作變成簡單的快速鍵的軟體。 例如: 重複的剪下貼上,或是將滑鼠調整音量的動作簡化成只按 +/- 鍵。 包括: AutoHotKey、AutoIt、EZScript、VBScript、Windows 批次檔。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.149.3

08/18 23:13, , 1F
喔喔 感謝
08/18 23:13, 1F
※ 編輯: VElysian 來自: 61.62.149.3 (08/18 23:22)

08/18 23:22, , 2F
改了一下錯字。 ^_^
08/18 23:22, 2F
文章代碼(AID): #18gP55R5 (EzHotKey)
討論串 (同標題文章)
文章代碼(AID): #18gP55R5 (EzHotKey)