@ECHO off TITLE greaterthanme-實現定時關機、注銷、重啟、鎖定等功能。start CLS COLOR 1f rem 使用COLOR命令對控制臺輸出顏色進行更改 MODE con COLS=41 LINES=18 rem MODE語句為設定窗體的寬和高 set tm1=%time~0,2% set tm2=%time~3,2% set tm3=%time~6,2% ECHO %date% %tm1%點%tm2%分%tm3%秒 ECHO ========================================= ECHO 請選擇要進行的操作,然后按回車 ECHO ——————————————— ECHO. ECHO 1. 定時關機 ECHO 2. 倒計時關機 ECHO 3. 刪除定時關機任務 ECHO 4. 查看任務狀態 ECHO 5. 刷新當前時間 ECHO 6. 重新啟動 ECHO 7. 鎖定計算機 ECHO 8. 注銷 ECHO 9. 退出 ECHO.cho SET Choice= SET P Choice=選擇 rem 設定變量Choice為用戶輸入的字符 IF NOT %Choice%== SET Choice=%Choice~0,1% rem 如果輸入大于1位,取第1位,比如輸入132,則返回值為1 ECHO. IF I %Choice%==1 GOTO SetHour IF I %Choice%==2 GOTO outtime IF I %Choice%==3 GOTO delAt IF I %Choice%==4 GOTO view IF I %Choice%==5 GOTO start IF I %Choice%==6 GOTO restart IF I %Choice%==7 GOTO lock IF I %Choice%==8 GOTO logoff IF I %Choice%==9 GOTO end rem 為避免出現返回值為空或含空格而導致程序異常,需在變量外另加雙引號 rem 注意,IF語句需要雙等于號 rem 如果輸入的字符不是以上數字,將返回重新輸入 ECHO 選擇無效,請重新輸入 ECHO. GOTO choSetHour CLS ECHO. SET ask= SET p ask=是否設定為每天執行關機命令(yn) IF NOT %ask%== SET ask=%ask~0,1% IF I %ask%==y GOTO yes IF I %ask%==n GOTO no GOTO SetHouryes ECHO 請指定24小時制式時間,格式為 小時分鐘 SET shutdowntime= SET p shutdowntime=輸入 at %shutdowntime% everyM,T,W,Th,F,S,Su tsshutdn 0 delay0 powerdown nul rem 設定為每周的星期一至星期日,即為每天 IF NOT errorlevel 1 GOTO ok rem 如果輸入正確,就執行ok段的語句 ECHO %shutdowntime% 不是標準的時間格式,請重新輸入 ECHO. GOTO yesno ECHO 請指定24小時制式時間,格式為 小時分鐘 SET shutdowntime= SET p shutdowntime=輸入 at %shutdowntime% tsshutdn 0 delay0 powerdown nul IF NOT errorlevel 1 GOTO ok ECHO %shutdowntime% 不是標準的時間格式,請重新輸入 ECHO. GOTO nook ECHO. SET h=%shutdowntime~1,1% SET ah=%shutdowntime~0,1% SET am=%shutdowntime~2,2% SET bh=%shutdowntime~0,2% SET bm=%shutdowntime~3,2% IF %h%== ( SET HM=%ah%時%am%分 ) ELSE ( SET HM=%bh%時%bm%分) rem 如果輸入hmm則HM=h時mm分,否則HM=hh時mm分 IF I %ask%==y ECHO 系統將于每天的%HM%關閉 IF I %ask%==n ECHO 系統將于%HM%關閉 ECHO 設定完畢! 按任意鍵繼續... PAUSE nul GOTO startouttime CLS ECHO. ECHO 請輸入倒計時秒數 ECHO ———————— ECHO (設定后要取消,單擊確定后按Ctrl+C鍵兩次) SET timed= SET p timed=輸入 tsshutdn %timed% delay0 powerdown nul IF not errorlevel 1 GOTO ok ECHO %timed% 是無效的關機時間,請重新輸入 ECHO. GOTO outtimedelAt cls echo. at del y echo 定時關機任務已取消,按任意鍵繼續... pause nul GOTO startview MODE con COLS=85 LINES=18 COLOR 70 ECHO. at ECHO 按任意鍵繼續... PAUSE nul GOTO startrestart shutdown -r -t 0lock rundll32.exe user32.dll,LockWorkStation goto startlogoff logoffend exit