Re: [請問] 光碟裡的資料名、檔案名
※ 引述《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
討論串 (同標題文章)
EzHotKey 近期熱門文章
PTT數位生活區 即時熱門文章