[分享] 批次檔產生指定字串+流水號
相當簡單的需求
以往都是透過 Excel 達成,卻常有殺雞用牛刀的感慨
使用過版友與其他網友提供的各種批次檔
覺得批次檔應該可以達成這簡單的需求
所以嘗試自己動手寫一個
自己不會寫程式(有一點學生時期電算課的模糊印象)
用力爬文參考(抄襲XD)許多前輩分享的批次檔
終於勉強寫出本文分享的批次檔
一開始寫得落落長又很混亂,也充滿 bug
根本不敢拿出來見人...
能力有限,即使花許多時間也只能精簡與除錯到目前程度
還有一些問題,不過已經完全滿足自己使用上的需求
自己動手完成,既好玩又有成就感
開心之餘,順手分享給可能有類似需求的版友
尚存問題:
.由於數值前補零的需求,數值範圍限於 1~999
(自己的使用需求很少超過這範圍)
.前、後綴值若包含特殊字元,可能會出錯
(沒有紀錄下來,也沒有一一測試)
注意!
若執行批次檔所在目錄存在名為 MyNum.txt 的檔案
將於執行本批次檔時不經過詢問直接刪除
若您恰好有與 MyNum.txt 相同檔名的檔案
請避免與本批次檔放在相同路徑底下執行
以下虛線後是本次野人獻曝的弱弱批次檔:
---------------------------------------------------
@echo off
title MyNum
If exist MyNum.txt del /f MyNum.txt
:RESN
echo.
SET /P SN=開始 (空值為 1):
cls
If "%SN%"=="" set SN=1
If %SN% LSS 1 set SN=1
If %SN% GEQ 999 set SN="" & goto RESN
:REEN
cls
echo.
echo 開始 (空值為 1): %SN%
SET /P EN=結束 (最大 999):
If "%EN%"=="" goto REEN
If %EN% LEQ %SN% goto REEN
If %EN% GEQ 1000 set EN=999
echo.
If "%PF%"=="" (SET /P PF=前綴 : )
If "%SF%"=="" (SET /P SF=後綴 : )
If %EN% GEQ 10 SET ZA=0
If %EN% GEQ 100 SET ZB=0
SET ZF=%ZA%%ZB%
for /l %%i in (%SN% 1 %EN%) do (
If %%i LSS 10 echo %PF%%ZF%%%i%SF%>> MyNum.txt
If %%i GEQ 10 for /l %%j in (10 1 99) do (
If %%i == %%j echo %PF%%ZB%%%i%SF%>> MyNum.txt)
If %%i GEQ 100 echo %PF%%%i%SF%>> MyNum.txt
)
start MyNum.txt
exit
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.141.45
※ 編輯: Ayiyaya (111.251.141.45), 08/19/2016 13:37:09
推
08/19 18:23, , 1F
08/19 18:23, 1F
推
08/21 10:17, , 2F
08/21 10:17, 2F
EZsoft 近期熱門文章
PTT數位生活區 即時熱門文章