UAC在我的心目中是好東西,雖然有不少人討厭它,但就像開車要繫安全帶,忍受一些不方便降低風險,永遠是值得的。
Windows桌面操作或檔案總管在需要管理者權限的場合會主動彈出提示,倒不用特別費心去記什麼動作需要提升權限。
但IT人員比較常遇到的困擾是命令提示字元視窗(cmd.exe,俗稱DOS視窗),若未使用管理者身分開啟cmd.exe,執行重啟IIS(iisreset)、停用啟動服務(net stop/start)等系統層級操作就得吃閉門羹。
除了如上圖靠右鍵選單的「以系統管理員身分執行」,從Widows Vista起有一個小密技,在開始選單輸入cmd再按Ctrl-Shift-Enter,Windows也會以管理者身分啟動cmd.exe。
到了Windows 8,我習慣裝Classic Shell找回開始選單,Ctrl-Shift-Enter小技巧仍然管用。
最近遇到一個狀況,登入 Windows 2012 主機準備開啟cmd下指令,沒有Classic Shell可用,我的直覺是在左下角視窗圖示按滑鼠右鍵找到「執行」:
輸入cmd按Ctrl-Shift-Enter:
咦… 開啟的是一般使用者模式cmd.exe。反覆試了好幾次都不成功,懷疑鍵盤故障,還是Windows 2012已拿掉此快速鍵?直到用Windows 8交叉測試,才確認「執行」視窗不支援Ctrl-Shift-Enter。
幾經嘗試,發現Ctrl-Shift-Enter要用在Windows 8/Windows 2012的搜尋常用鍵(Search Charm,可按Window+Q叫出)才有效。如下圖,在Search Charm輸入cmd,選擇命令提示字元(Command Prompt)再按Ctrl-Shift-Enter,就能以管理者身分執行cmd.exe。
爬文過程學到另外一招,在PowerShell使用指令Start-Process "cmd.exe" –Verb RunAs,也能以管理者身分執行cmd.exe,筆記之。