Re: [批次] 在每行開頭新增資料

看板EzHotKey作者 (VElysian)時間8年前 (2016/09/14 00:09), 8年前編輯推噓2(200)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《wopicoun (挖屁康)》之銘言: : 小弟初學batch file : 想問下如果有我一個txt檔如下 : 123 apple : 456465 orange : 88 banana : . : . : . : 第一欄是數字,第二欄是字串, : 1.我想要將每一行通過第一欄排序大小 : 2.之後在開頭新增一個新的欄位,放其他字串例如 Aa 123 apple 這樣 : 大致拆成兩步,請問如何只用bat完成呢? : 感謝 1. 有一些文字編輯器有排序功能 加字的話可以用 regular expression 搜尋取代 2. 批次檔不敷使用 可改用 AutoHotKey (XD) 延虛線剪下貼上即可 尚未測試 使用前請備份檔案 XD ===== 8< ===== ; 將檔案內容讀入 content 變數 FileRead, content, C:\要處理的文字檔.txt ; 排序檔案 if not ErrorLevel ; 讀取成功 { ; 排序 sort, content ; 寫入 FileAppend, %content%, C:\要處理的文字檔_已排序.txt content = ;釋放記憶體 } ; 開頭文字 head = Aa ; 讀取每行 Loop { ; 讀取 FileReadLine, line, C:\要處理的文字檔_已排序.txt, %A_Index% ; 增加文字 line = %head% %line% ; 讀取錯誤則跳出 if ErrorLevel break ; 寫入此行 FileAppend, %line%, C:\要處理的文字檔_已加字.txt } ===== >8 ===== 參考資料 https://www.autohotkey.com/docs/Tutorial.htm https://www.autohotkey.com/docs/commands/Sort.htm https://www.autohotkey.com/docs/commands/FileAppend.htm https://www.autohotkey.com/docs/commands/FileReadLine.htm -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.205.8 ※ 文章網址: https://www.ptt.cc/bbs/EzHotKey/M.1473782962.A.34A.html ※ 編輯: VElysian (111.250.205.8), 09/14/2016 00:11:36

09/14 02:01, , 1F
是版主!
09/14 02:01, 1F

09/14 07:42, , 2F
感謝版主,我原本是希望只用bat做,看來是不行了
09/14 07:42, 2F
文章代碼(AID): #1Ns2IoDA (EzHotKey)
討論串 (同標題文章)
文章代碼(AID): #1Ns2IoDA (EzHotKey)