須藤! Windows cmd 上的等效項

須藤! Windows cmd 上的等效項

我正在尋找一個執行程式相當於 Linux和其他 bang 指令,sudo !!例如!x!?x和提到的!!:p!!*這裡

答案1

你可以試試gsudoWindows 的 sudo允許以提升的權限運行命令在目前控制台上,提升目前 shell,或在新控制台上啟動提升的指令。

例子

gsudo {command} [arguments]
gsudo md "C:\Program Files\MyApp"

# spawn the current shell (Cmd/PowerShell/PSCore) in a new console window
gsudo -n

# spawn PowerShell in a new console window
gsudo -n powershell

更新:由於gsudo v0.7.1,它支持 Unix-sudo Bang Bang 語法,在 CMD 上:

  • gsudo !!提升最後執行的命令。
  • gsudo !prefix提升最後執行的以前綴開頭的命令。
  • gsudo !?infix提升最後執行的包含中綴的命令。

安裝

  • 用湯匙安裝:scoop install gsudo
  • 使用 Chocolatey 安裝:choco install gsudo

手動安裝方法、文件和來源位於https://github.com/gerardog/gsudo

答案2

要回答問題的另一半,您可以使用多斯基查看或解析命令歷史記錄。預設情況下,Doskey 在所有支援的 Windows 版本上已安裝並處於活動狀態。

這顯示了您的命令歷史記錄:

doskey /history

您可以解析結果並將其推送到 runas,但將其包裝在批次文件中將使提示時變得更加簡單。

答案3

sudo 等效項是運行命令,用於在不同的使用者帳戶下執行程式。

使用範例:

runas /user:an-administator-account "cmd.exe /C mycommand"

Windows 與 Linux 的不同之處在於,預設情況下,即使是管理員帳戶也不會以提升的方式運行,儘管與非管理員帳戶不同,它可以提升自身。

自舉的方法請參考:

相關內容