閩人
我們可以通過“組策略+開關(guān)機腳本”來記錄孩子使用電腦的時間。為了方便查看,我們先在“G:\”(盤符可自行修改)下新建“開機查詢”和“關(guān)機查詢”這兩個文件夾,然后啟動記事本程序,新建兩個空白文本文件“開機查詢.t xt”和“關(guān)機查詢.t xt”并放置在上述對應(yīng)的文件夾里。
接著再啟動記事本程序,輸入下面的命令:
" $(Get-Date -Format 'y y y y-MMdd')的開機時間是:" | Out-File -Append"G:\開機查詢\開機時間查詢.txt"
Get-Date -Format 'H時:m分:s秒' |Out-File -Append "G:\開機查詢\開機時間查詢.txt"
然后將其保存為“kaiji.ps1”,放置在“G:\開機查詢”文件夾中備用(圖1)。
命令解釋:第一行命令是把“Get-Date”當(dāng)作一個變量,使用"$()"進行引用,日期使用“年月日”的格式(表示開機日期),并將該內(nèi)容以追加輸入的方式輸出到“G:\開機查詢\開機時間查詢.txt”文件中。第二行命令則是使用“Get-Date”獲取當(dāng)前時間(格式為“時分秒”,表示開機時間),也追加輸出到同一個文件中。
操作同上,再新建一個名為“guanji.ps1”的文件(把“kaiji.ps1”中的“開機”改為“關(guān)機”,其他的代碼相同),然后保存在“G:\關(guān)機查詢”文件夾中備用。
接著在桌面的任務(wù)欄搜索框中輸入“組策略”,啟動組策略編輯器后依次展開“計算機配置→Windows設(shè)置→腳本(啟動關(guān)機)→啟動”,在打開的窗口中切換到“PowerShell腳本”,點擊“添加”,將“G:\開機查詢\kaiji.ps1”添加到運行列表中(圖2)。
操作同上,繼續(xù)添加“G:\關(guān)機查詢\guanji.ps1”到關(guān)機腳本中。這樣每次開關(guān)機后都會自動運行上述的腳本,并將開關(guān)機時間寫入到對應(yīng)的文本文件中。我們只要打開該文件進行查看即可(圖3)。
PowerShell腳本還能用來監(jiān)控進程的創(chuàng)建時間和持續(xù)運行的時間,并且可以根據(jù)預(yù)設(shè)的時間對進程進行管理。比如現(xiàn)在要限制孩子最多玩90分鐘的游戲,游戲進程是“C:\dnf \地下城與勇士\DNFchina.exe”。
首先啟動記事本程序,輸入下面的命令,然后將其保存為“3.ps1”,放置在“G:\”根目錄下備用。
get-processDNFchina|?{([DateTime]::Now-$_.StartTime).TotalSeconds-gt3600}|stop-process
命令解釋:
使用“get-process”查詢指定進程(DNFchina)的信息,然后用當(dāng)前時間減去游戲進程的創(chuàng)建時間,如果結(jié)果大于3600秒(即60分鐘),那么就執(zhí)行“stopprocess”命令來終止進程。
接著在桌面的任務(wù)欄搜索框中輸入“任務(wù)計劃”,啟動任務(wù)計劃程序后新建一個基本任務(wù),在創(chuàng)建任務(wù)窗口中切換到“常規(guī)”,任務(wù)的名稱設(shè)置為“禁止游戲”,并勾選“使用最高權(quán)限運行”。再切換到“觸發(fā)器→新建觸發(fā)器”,建立一個2021年3月23日8:00開始運行的任務(wù)(開始時間可自行修改),具體參數(shù)設(shè)置參考圖4所示的界面(圖4)。
繼續(xù)切換到“操作”,新建一個啟動程序的操作,“運行程序或腳本”處選擇“C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe”,“添加參數(shù)”處選擇“G:\3.ps1”,“起始于”處選擇“G:\”(圖5)。
這樣從2021年3月23日的8:00開始,系統(tǒng)就會在后臺每隔半小時運行一次上述設(shè)置的腳本“G:\3.ps1”,它會對游戲進程(DNFchina.exe)的持續(xù)時間進行統(tǒng)計(如果游戲未運行則自動忽略)。假設(shè)孩子是在8:01分開始啟動游戲的,那么8:30、9:00運行的任務(wù)不會終止游戲進程(因為當(dāng)前時間減去進程的啟動時間小于60分鐘),而9:30運行的任務(wù)則會自動終止游戲進程(因為此時的持續(xù)時間為89分鐘,大于60分鐘,也就意味著孩子每次的最長游戲時間實際為89分鐘)。如果需要修改限制時間,請自行更改“3.ps1”中的時間代碼,并重新設(shè)置“重復(fù)任務(wù)間隔”等選項(圖6)。
為了防止進程結(jié)束后孩子再次運行該游戲,還可以在“3.ps1”中添加一行代碼(代碼為:echoy|cacls"C:\dnf\地下城與勇士\DNFchina.exe"/gcfan:F),表示只授予cfan賬戶有完全控制權(quán)限(cfan為家長的用戶名,孩子不知道該賬戶的密碼)。這樣進程結(jié)束后,孩子的賬戶將沒有權(quán)限再次運行“DNFchina.exe”。