請問高手 批次檔(.bat) 的寫法

公司有一部很久遠的實驗工具(有十幾年了吧 系統早就停產了 原生產公早己倒閉了 維~"~ )
為什麼不換新型的 這我也不知道(爭取好幾年了.......)
它滴系統 Windows 3.1 英文版 (記憶體 加 硬碟還不到1G) 因為實驗器有硬體鎖的關係根本不能換電腦
不然就可以使用排程軟體來做 之前有聽到廠商人員說可以使用批次檔來做這種重覆的動作
現在因為實驗關係一定要關掉一個 另一個才能run 因此必需有人定時去開啟軟體)

但是久了實在很受不了 ~"~ 不知道有沒有高手能幫我們解決問題

它有五種程式 它的執行檔 分別都是 .exe 滴(好像是癈話) 沒有圖型介面它dos下在跑的

每種程式有run的時間都不同 所以要定時間

動作大約是下面的程式

開啟a程式--->run數據--->關閉a程式--->等待五分鐘(機器需降溫)--->啟動b程式--->.......(不幾的循環)

不知道有沒有辦法讓它去不斷 run 呢??
2007-04-22 8:20 發佈
bat是script language的一種,不過非常簡陋
bat檔可以幫你呼叫程式,但沒有辦法幫你關閉程式.
如果你的程式不會自己結束,那麼你必須自己結束程式,bat才會繼續.

1.批次檔如下
cls
@echo ******************************************
@echo * 10=program timing, 300=cooling timeing *
@echo ******************************************
@echo 執行第一個程式
sleep 10
@echo 關閉第一個程式
sleep 300
@echo 執行第二個程式
sleep 10
@echo 關閉第二個程式
sleep 300
@echo 執行第三個程式
sleep 10
@echo 關閉第三個程式
sleep 300
@echo 執行第四個程式
sleep 10
@echo 關閉第四個程式
sleep 300
@echo 執行第五個程式
sleep 10
@echo 關閉第五個程式
sleep 300

2.windows xp 下有一個指令 at ,我忘記win31 有沒有了
像是你要在晚上8點關機,就打
at 20:00 shutdown -s
麥問阮耶名,叫阮第一名..

ocyoe wrote:
bat是script...(恕刪)


是沒錯啊 真的年代久遠了 但實驗器的電腦真的太舊了 連升級都沒辦法 (我的pda規格都比它還好 -.-|||)
關鍵是控制電腦和實驗器的那個硬體鎖啊有 老闆不想因為一部電腦就換一部新的機器(新的要一百多萬 ~"~)
現在的定時控制軟體都沒安裝 連軟體設計公司的人員來看了也搖搖頭 機器內部的程式要改也是大工程啊
所以不得以才聽取軟體公司的建議


kikiatw wrote:
1.批次檔如下
cl...(恕刪)


感謝kikiatw 建議 等一下就來試試看能不能行
可是我有幾個第方看不太懂 我改的方式大約如下 它 應該是以秒數計算 電腦是不關機的(關了就麻煩了.....)
但run完第五個 再run回第一個嗎??或是哪兒有可以查指令的書?? 因為去電腦賣場都買不到相關的書 ~"~

cls
@echo ******************************************
@echo * 10=program timing, 300=cooling timeing *
@echo ******************************************
@echo a.exe
sleep 10
@echo a.exe
sleep 300
@echo b.exe
sleep 10
@echo b.exe
sleep 300
........以下略

======================= batch start ======================
@echo off

:BEGIN

echo "Processing App 1:"
App_1.exe
echo "App 1 done, cooling equipment for 100 secs..."
sleep 100

echo "Processing App 2:"
App_2.exe
echo "App2 done, cooling equipment for 50 secs..."
sleep 50

(...略...)

echo "Processing App n:"
App_n.exe
echo "App n done, cooling equipment for 200 secs..."
sleep 200

echo "Cycle completed!!"
GOTO BEGIN
======================= batch end ======================

欲知詳情, 請google "dos bat syntax"
homoso wrote:
是沒錯啊 真的年代久...(恕刪)

bat啊,讓我拉回DOS時代了
不是很熟,但因為曾經寫過
所以獻醜一下,若有錯誤還請高手指正

一、解釋一下
cls --------------------------清除螢幕
@echo ******************************************
@echo * 10=program timing, 300=cooling timeing *
@echo ******************************************
@echo 執行第一個程式
sleep 10
........
echo 是代表在螢幕上秀出echo後的文字
加個@代表不要將"echo"這四個字秀出來
sleep則應該就是暫停/執行時間了(這小弟沒用過)

二、通常,執行檔都會有其專屬的指令
舉個例子
"開始"-"所有程式"-"附屬應用程式"-"命令提示字元"
試著打"ipconfig"及"ipconfig /all"的結果是不一樣的
而每個程式的指令用法通常可以用"/?"來查詢
樓主可以試試
至於像"sleep"則是屬於dos模式裡的指令了
google查一下應該還會有資料

三、建議樓主此篇不妨同步發布在"桌上電腦區"
那裏也許也有高手也說不定

四、個人小小建議,無惡意
"滴"這個字有時會讓人感覺怪怪的(至少小弟就是啦)
這個用法有點在耍可愛的感覺
或許樓主是習慣了吧
純粹是個人感覺啦
樓主聽聽就好
政府與A片的差別:一個是沒經驗愛裝有經驗 一個是有經驗愛裝沒經驗;兩者躺著幹都能上。
怒兒 wrote:
echo "Processing App 1:"
App_1.exe
echo "App 1 done, cooling equipment for 100 secs..."
sleep 100



我也n年沒寫 bat 了

印象中呼叫外部程式的話,要用 call

echo "Processing App 1:"
call App_1.exe
echo "App 1 done, cooling equipment for 100 secs..."
sleep 100

如果沒call 的話,App_1.exe 結束後,bat 也不會繼續執行下去




十年前的印象了....
堅持了很久的部落格 https://what30.qoding.us
剛試跑了一下 它只會執行 但執行在第一個跑完後 似乎有閃一下什麼就關掉了 還在研究哪有問題

army0916 wrote:

bat啊,讓我拉回...(恕刪)


謝謝 army0916 的教學和指正 "滴"字的用法真的不太恰當 我也相當贊同錯字的運動 但在下的國文造詣真的
不太高明常有錯字 請見諒 我會盡量注意(有時打太快 會沒注意到 因為我用大易快拆 有時習慣字它會自動幫我選)

至於 "怒兒"和"next0001" 說的 我先消化一下 試試看有問題再請教

因為不確定這種文章是不是適和發在桌面電腦那邊 所以閒聊的方式來這邊問問大家 順便自己研究一下

這邊往往有許多高人潛伏在此 (真的好多......@@) 所以才在這 如果不適合 就改板別 謝謝指正
請問這問題解決了嗎???
ocyoe wrote:
bat是script language的一種,不過非常簡陋
bat檔可以幫你呼叫程式,但沒有辦法幫你關閉程式.
如果你的程式不會自己結束,那麼你必須自己結束程式,bat才會繼續.
homoso wrote:
剛試跑了一下 它只會...(恕刪)

首先感謝樓主的明裡
如果01上多一點這樣的溝通
01會更美好的

樓主說到第一個程式結束後就停了
我想可能是CALL這指令的問題
我記得某些程式不用CALL也可以繼續
但某些程式就必須要用CALL
但怎麼區分我真的忘了

好像是DOS本身內建的指令或程式不需要吧

另外樓主提到是使用WIN 3.1
如果這樣的話
有可能需要注意記憶體的問題喔
因為WIN 95以前
若未經過設定的話
是只能使用640K的

有錯的話還請高手指正
政府與A片的差別:一個是沒經驗愛裝有經驗 一個是有經驗愛裝沒經驗;兩者躺著幹都能上。
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?