
[已解決]批處理如何隨機提取文本中某行并輸出最后由 hmlstfqtl 于 -6-4 13:22比如 在一個目錄里 有下面幾個文本文件FList.txt實際內容比下面的這段長很多具體行數不知道
BGList.txt實際內容比下面的這段長很多具體行數不知道nclick="copycode($('code0'));">復制代碼
- D:bg
- D:bgPhotos
- D:bgSS
- ...
- ...
- ...
內容算是從這里開始要做這樣一個批處理隨機提取 BGList.txt 文本里的其中一行然后以下面的格式輸出一個名為 desktop.ini 的文件到 FList.txt 這個文本里的路徑 并把這個文件夾加上 attrib +s 的系統屬性然后再隨機提取 BGList.txt 文本里的其中一行 重復上面的輸出工作也就是每輸出一個 desktop.ini 文件就要重新提取一次 BGList.txt 里的某行 還有就是每個 FList.txt 的路徑都只輸出一次 desktop.ini 不要誤會是輸出N多次格式如下nclick="copycode($('code1'));">復制代碼
- D:bgPhotos1 (1).PNG
- D:bgPhotos1 (2).png
- D:bgPhotos1 (3).png
- D:bgPhotos1 (4).png
- ...
- ...
- ...
因為文件夾 也就是 FList.txt 里的內容會很多 但是提取出來的行數最少要做到每行都能提取出來 別要不能提取第一行或最后一行什么的盡量做到每行出現的概率是1/行數 的概率另外如果可以做到所有行數不重復的全部提取完一次后 再進行新的一輪的提取 的話 就更好了就例如 有4行隨機提取過 第3行 然后后面3次就不會再出現第3行 而出現第1 2 4 行 到第5次的時候 所有行數的隨機出現概率刷新 即為 所有的概率又重新為1/行數 說道這里基本已經說明完了如果是按照上面的意思寫出來的批處理 運行后大概會出現下面的樣子nclick="copycode($('code2'));">復制代碼
- [{be098140-a513-11d0-a3a4-00c04fd706ec}]
- iconarea_image=BGList.txt里隨機提取出的內容輸出到這里
desktop.ini的內容都不同 即舉例為D:bgdesktop.ini內容為nclick="copycode($('code3'));">復制代碼
- 生成的desktop.ini文件為這樣
- D:bgdesktop.ini
- D:bgPhotosdesktop.ini
- D:bgSSdesktop.ini
D:bgPhotosdesktop.ini內容為nclick="copycode($('code4'));">復制代碼
- [{be098140-a513-11d0-a3a4-00c04fd706ec}]
- iconarea_image=D:bgPhotos1 (3).png
D:bgSSdesktop.ini內容為nclick="copycode($('code5'));">復制代碼
- [{be098140-a513-11d0-a3a4-00c04fd706ec}]
- iconarea_image=D:bgPhotos1 (4).png
不知道表達的清不清楚或有什么模糊 曖昧不清的地方如果有的話 請回帖指出[ 最后由 hmlstfqtl 于 -4-22 23:56]nclick="copycode($('code6'));">復制代碼
- [{be098140-a513-11d0-a3a4-00c04fd706ec}]
- iconarea_image=D:bgPhotos1 (1).png

