iT邦幫忙

0

請問 powershell 有類似 linux sudo -s 功能嗎?

  • 分享至 

  • xImage

請問 powershell 有類似 linux sudo -s 功能嗎?

有時打命令突然需要管理員權限,這時候只能去打開 powershell run as admin
不能像是 linux 輸入 sudo -s 就能簡單切換管理員

我嘗試搜尋 : powershell 切換管理員

找到網頁都是使用命令 start-process powershell -verb runas 另外打開 powershell run as admin...

咖咖拉 iT邦好手 1 級 ‧ 2020-10-26 13:34:15 檢舉
似乎不行
要做到這功能必須自己寫 PowerShell配置
tombo iT邦高手 1 級 ‧ 2023-08-02 15:28:48 檢舉
If(-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")){
"沒有管理者權限,改以管理者身分執行"
Start-Sleep -Seconds 3
$ScriptFullPath = $MyInvocation.MyCommand.Definition
$arguments = "& '" + $ScriptFullPath + "'"
# 另外以管理者身分執行 PowerShell,並載入 Script 來執行
Start-Process powershell -Verb runAs -ArgumentList $arguments
# 中斷後面程式指令
Break
}
tombo iT邦高手 1 級 ‧ 2023-08-02 15:30:57 檢舉
第一行檢查是否具備管理者角色,沒有具備管理者身分,就抓取Powershell Script 程式檔名路徑,丟給 Start-Process 呼叫 Powershell 帶 runAs 參數執行。然後中止原始程式
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
9
japhenchen
iT邦超人 1 級 ‧ 2020-10-26 14:35:34
最佳解答

1、進powershell (不用管理員)
2、輸入echo $PROFILE (ENTER),看出現什麼ps1檔,把資料夾名字抄下來,找一下這個ps1檔所在的資料夾存不存在,如果沒有,請手動建立,並把這個echo 出來的$PROFILE檔用notepad叫出來編輯,例:

notepad C:\Users\YourUserName\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

3、在開起來的空記事本裡加入下列內容,並且存檔

function sudo {
	start-process powershell -verb runas
}

(如果打開記事本出現資料夾不存在的錯誤,請檢查echo 出來的$PROFILE所指向的資料夾是否確實存在)

4、重開PowerShell ,就可以輸入sudo指令切換到administrator了!

感謝您!

2
IT 癡
iT邦高手 1 級 ‧ 2020-10-26 13:59:09

你把 powershell 捷徑複製到桌面,對捷徑點右鍵,選 "內容",再點出現畫面下方的 "進階",將 "以系統管理員身分執行" 勾選,離開
之後對 "此" 捷徑點二下後的開啟視窗,都是以系統管理員身分執行,"此" 的意思是現在只有這個捷徑有效,即便再複製一個 powershell 出來,也不會比照會有

感謝您!

3
froce
iT邦大師 1 級 ‧ 2020-10-27 09:47:13

https://github.com/gerardog/gsudo

win10搭配windows terminal還算有點linux下的feel。

Homura iT邦高手 1 級 ‧ 2020-10-27 11:13:58 檢舉

這個看起來也不錯

讚! 這個是我想要的效果

我要發表回答

立即登入回答