Sudo !! setara dengan PowerShell

Jawaban:

13

$^ adalah variabel yang diperluas ke perintah Powershell yang terakhir dieksekusi.

Anda dapat menjalankan perintah sebagai pengguna lain menggunakan runas, jadi berikut ini berfungsi:

runas /user:domain\administrator $^

Untuk mempersingkat itu sedikit, Anda bisa melakukan sihir dengan alias. Lihatlah artikel Technet ini untuk info lebih lanjut.

EDIT: Satu peringatan - $^hanya mengeksekusi perintah pertama dalam pipa atau multi-perintah. Jika Anda perlu mengulang seluruh perintah yang dibumbui dengan pipa atau titik koma, gunakan Invoke-Historysebagai gantinya (yang default ke perintah penuh terakhir secara keseluruhan).

Hyppy
sumber
3
Sebenarnya, $^adalah token pertama dari perintah sebelumnya. Jika saya dot-source skrip dengan . ./foo.ps1itu $^adalah .. Ini juga berarti bahwa argumen tidak terkandung. Melakukan apa pun yang melebihi token tunggal tidak akan bekerja dengan cara ini.
Joey
ok, apakah dia meminta kata sandi setelah itu? Saya mencoba menghindari penyisipan kata sandi plaintext dalam skrip saya.
Insinyur Sistem Senior
Ya, benar. Kecuali Anda menjalankan skrip sebagai administrator, Anda harus memberikan kredensial untuk melakukan apa pun yang memerlukan hak administrator. Anda mungkin ingin melihat ke dalam sesuatu seperti Kixtart untuk tokenize password yang tertanam
Hyppy
0

Saya selalu memikirkan JEA (Just Enough Administration) sebagai upaya untuk memperkirakan beberapa fungsi sudo. Anda dapat membacanya di sini:

https://docs.microsoft.com/en-us/powershell/jea/overview

Perbedaannya adalah bahwa ia menggunakan PS remoting daripada menerapkan ke mesin lokal. Ini mungkin perbedaan yang cukup kritis, cukup untuk mendorongnya terlalu jauh dari sudo.

Mengangkat ke akun untuk Kontrol Akun Pengguna, menggunakan runa atau yang lainnya, tidak cocok untuk saya. Ini lebih mirip paralel su -.

Chris Dent
sumber
1
We're sorry, the page you requested cannot be found.. Tampaknya ada di sini sekarang.
GnP