對這文章發表回應
發表限制: 非會員 可以發表
發表者: 冷日 發表時間: 2012/2/24 17:21:36
在以前DOS的時代,我們很習慣寫Bat檔來幫系統做些小事情。
而那個時候如果有需要暫停一下的話,除了PAUSE可以來暫停一會,並透過使用者Press any key來繼續以外,我們還有wait這個指令可以使用!
但是在後期得Windows系統中,Wait這個指令不復存在,但我們偶而仍有需要暫停一下,而且要自動執行(就是使用者不介入)的命令要怎麼辦呢?
冷日今天發現一個辦法,源自於某位網友的提點,真的是太天才了!
那方法非常簡單,就是:ping!
我們首先來看看ping的用法與說明:
這裡告訴我們,ping這個指令可以加-w這個參數達到『wait for each reply』!
我們就是要利用這個東西啊!
所以我們可以透過ping一個不存在的ip,EX:
說明:-w X , x = 多少ms
如此一來不但可以達成我們wait的要求,還可以以millisecond為單位呢!
只是,既然我們ping得IP是不存在的話,response time可能會要一點時間,所以只是要Wait很短的時間的話可能會有困難。
但是拿這東西來替代wait指令,等待個幾分鐘的話卻非常好用,在此分享給大家!
參考資料:
Me, Myself, and Taco: How to "wait" in dos prompt while running a batch file ?
[問題]讓批次檔暫停幾分鐘的指令 - PCZONE 討論區
而那個時候如果有需要暫停一下的話,除了PAUSE可以來暫停一會,並透過使用者Press any key來繼續以外,我們還有wait這個指令可以使用!
但是在後期得Windows系統中,Wait這個指令不復存在,但我們偶而仍有需要暫停一下,而且要自動執行(就是使用者不介入)的命令要怎麼辦呢?
冷日今天發現一個辦法,源自於某位網友的提點,真的是太天才了!
那方法非常簡單,就是:ping!
我們首先來看看ping的用法與說明:
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] target_name
Options:
-t Ping the specified host until stopped.
To see statistics and continue - type Control-Break;
To stop - type Control-C.
-a Resolve addresses to hostnames.
-n count Number of echo requests to send.
-l size Send buffer size.
-f Set Don't Fragment flag in packet.
-i TTL Time To Live.
-v TOS Type Of Service.
-r count Record route for count hops.
-s count Timestamp for count hops.
-j host-list Loose source route along host-list.
-k host-list Strict source route along host-list.
-w timeout Timeout in milliseconds to wait for each reply.
這裡告訴我們,ping這個指令可以加-w這個參數達到『wait for each reply』!
我們就是要利用這個東西啊!

所以我們可以透過ping一個不存在的ip,EX:
ping 192.168.100.253 -w 60000
說明:-w X , x = 多少ms
如此一來不但可以達成我們wait的要求,還可以以millisecond為單位呢!
只是,既然我們ping得IP是不存在的話,response time可能會要一點時間,所以只是要Wait很短的時間的話可能會有困難。
但是拿這東西來替代wait指令,等待個幾分鐘的話卻非常好用,在此分享給大家!

參考資料:
Me, Myself, and Taco: How to "wait" in dos prompt while running a batch file ?
[問題]讓批次檔暫停幾分鐘的指令 - PCZONE 討論區