個人資料
正文

與熊孩子鬥法,在WINDOWS中利用腳本實現定時自動關機

(2020-04-16 22:05:39) 下一個

與熊孩子鬥法,在WINDOWS中利用腳本實現定時自動關機

現在這段時間小朋友都不用上學,所以他們隻能窩在家裏了。在家裏怎麽辦,隻能打遊戲啊,現在打遊戲打得天昏地暗。沒日沒夜有的時候打到半夜12點還不關機。我實在是受不了。

那麽我想到一個能不能設置一個自動關機呢?回憶了一下我們很早時候學過的DOS的腳本程序我估計網絡上也有很多,我懶得去找我就現在自己開動腦筋寫一個看一下效果怎麽樣。

其實現在小朋友玩手機平板玩電腦都比大人厲害多了,大人想管他們的實在在是心有餘而力不足。如果他們用的pc上麵的視頻遊戲都是基於windows的。還可以發揮一下我們的優勢可以跟他們鬥一鬥

那麽這個方法來有幾個前提條件

第一就是你首先大人要有管理員的賬號而小孩的賬號一定要是普通用戶,或者即使不是普通用戶也要是不能在管理員成員裏麵。

第二個前提條件呢就是你要懂得如何設置計劃任務也就是你一旦有了這個腳本程序你可以把它利用計劃任務按你的需求讓他運行。我問你不會的話呢可以參照一下這個視頻裏麵演示了一下如何設置計劃任務。如果你已經會了可以跳過這一節

第三個前提條件你要懂得如何編輯保存腳本文件。下麵這個視頻的演示了一下如何編輯保存腳本文件。如果你已經會了可以跳過。

 

最後呢我們就來分析一下我們希望得到的腳本。

我們知道windows裏麵它有一個命令可以實現關機的他就是叫做shutdown好那麽這個命令配合幾個參數來我們就可以實現關機。

 

 

如果你打開你的命令行窗口試一下這個命令你就知道它是可以實現關機。

所以最簡單的一個腳本就是把這個命令寫進去,然後利用前麵的學到的計劃任務在特定的時間比如說晚上10點鍾讓他自動運行,那麽就可以實現關機了。

但是這裏麵有一個問題比如說10點鍾之前大人都去睡覺去了,那你這個腳本自動關機了以後,熊孩子又把它開機怎麽辦呢?所以這樣定時關機還是不夠的。我們還希望實現的是如果他們在特定的時間裏重新開機的話,我們這個腳本也要再運行一次把機器關掉,那麽這個就帶來了一定的複雜性了。所以我們的腳本裏麵有一個對時間的判斷也就是說如果時間,是在我們指定的範圍內他就運行關機,如果不在我們指定的範圍內就跳過關機。那麽腳本裏麵有這個判斷以後呢我們就可以利用計劃任務創建第二個任務。第二個任務就是在每次機器開機運行時執行這個腳本。那這樣的話呢,如果他重新開機的話就會腳本就會在機器關上。

附完整腳本,請將其粘貼到寫字板中,再保存為.bat文件(注意,保存是文件類型要選擇*.*)

-----------從下一行開始複製
::自動關機腳本。在晚上10pm-2am之間觸發運行後會延時2分鍾自動關機
::最後更新2020-04-20
@echo off
set hour=%time:~0,3%
echo %hour% | find "22:"
if NOT ERRORLEVEL 1 goto startshutdown
echo %hour% | find "23:"
if NOT ERRORLEVEL 1 goto startshutdown
echo %hour% | find "00:"
if NOT ERRORLEVEL 1 goto startshutdown
goto end
:startshutdown
shutdown /s /t 120
:message
msg * Your screen time is out. Keep Healthy. Please turn off your computer.
:end
---------複製到上一行為止

最後來討論一下這個腳本的缺點

第一不是很靈活。也就是說如果你要改變這個時間的話你還到每一台電腦裏麵去更改腳本,所以比較理想的方法是,如果有一個小程序能夠運行在手機端通過手機來更改開機關機的時間那就比較理想了。這個任務就留給壇子裏的高手來發揮了。

第二個那這個腳本如果是電腦的時間不對的話可能也會出現問題。也就是說如果在開機之前進入到bios裏麵更改了時間的話那就是實現了所謂的破解了

第三個就是如果管理員的權限被獲取了那麽他是可以到計劃任務裏麵將所有的計劃任務給禁止掉,我現在還沒有很好的方法隱藏那些任務。

第四就是界麵不友好要更改時間還要到腳本裏麵去更改,這對於大部份的家長來說是個挑戰。不知道有沒有高手可以寫一個圖形化界麵自動生成腳本和任務

[ 打印 ]
閱讀 ()評論 (0)
評論
目前還沒有任何評論
登錄後才可評論.