2015-01-21 167 views
1

所以我創建了一個文本冒險批處理遊戲,但是在我的家用計算機上測試之後,沒有任何睡眠命令可以工作。我的家用電腦運行Win 8.1,用於創建遊戲的筆記本電腦運行Win7。我不知道這是爲什麼'睡眠'功能不起作用的原因..睡眠和超時​​之間的區別?

但是有誰能告訴我sleeptimeout之間的區別嗎?爲什麼睡眠命令不再工作?

回答

4

Sleep是Windows腳本宿主命令(如JScript或VBScript)。這不是一個真正的cmd解釋批處理。

Timeout就像是一個pause,它會在指定的時間或按鍵後自動繼續(除非使用/nobreak開關)。

還有waitfor,它會暫停X秒或直到從另一臺計算機或窗口收到信號。

timeoutwaitfor包含在Windows 7及更新版本中。爲了與早期版本的Windows兼容,傳統上,ping用於模擬暫停這樣的:

ping -n 6 0.0.0.0 >NUL 

...將暫停5秒。 (-n 6意味着ping 6次,第一次ping響應是瞬間的,所以需要N + 1來暫停N秒。)

有些人也使用choice /t來暫停。如果您願意,請參閱How to sleep for 5 seconds in Windows Command Prompt相關頁面。可能會提及您已安裝的實用程序或資源工具包,它使您的Win 7筆記本電腦上的睡眠工作成爲可能,而筆記本電腦尚未安裝在8.1桌面上。

+0

這有效,但現在我有一個非常煩人的「3 ... 2 ... 1 ...秒鐘,按CTRL + C退出」信息顯示每次使用該命令。任何方式來隱藏「調試消息」? – YoloJoe 2015-01-21 06:21:07

+0

只需重定向輸出:'timeout/T 5/nobreak> nul' – JosefZ 2015-01-21 09:18:56

+0

工作正常。謝謝 ;* – YoloJoe 2015-01-21 14:34:18