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