Bagaimana saya menjalankan perintah berikut di windows:
$ sudo django-admin.py startproject NEW
?
Bagaimana saya menjalankan perintah berikut di windows:
$ sudo django-admin.py startproject NEW
?
Jawaban:
Tidak ada sudo
perintah di Windows. Padanan terdekat adalah "jalankan sebagai administrator."
Anda dapat melakukan ini menggunakan runas
perintah dengan tingkat kepercayaan administrator, atau dengan mengklik kanan program di UI dan memilih "jalankan sebagai administrator".
gsudo
( stackoverflow.com/a/58753166/97471 ). Ini adalah sudo untuk windows dengan *nix sudo
pengalaman pengguna: Mengizinkan untuk menjalankan perintah di dalam konsol saat ini, dan cache kredensial (hanya satu popup UAC).
Buka notepad dan tempel kode ini:
@echo off
powershell -Command "Start-Process cmd -Verb RunAs -ArgumentList '/c cd /d %CD% && %*'"
@echo on
Kemudian, simpan file sebagai sudo.cmd
. Salin file ini dan tempel di C:\Windows\System32
atau tambahkan jalur sudo.cmd
ke Variabel Lingkungan PATH Anda.
Saat Anda membuka command prompt, Anda sekarang dapat menjalankan sesuatu seperti sudo start .
.
Jika Anda ingin jendela prompt perintah admin tetap terbuka saat Anda menjalankan perintah, ubah kode di notepad menjadi ini:
@echo off
powershell -Command "Start-Process cmd -Verb RunAs -ArgumentList '/k cd /d %CD% && %*'"
@echo on
Penjelasan:
powershell -Command
menjalankan perintah PowerShell.
Start-Process
adalah perintah PowerShell yang memulai proses, dalam hal ini, command prompt.
-Verb RunAs
menjalankan perintah sebagai admin.
-Argument-List
menjalankan perintah dengan argumen.
Argumen kami adalah '/c cd /d %CD% && %*'
. %*
berarti semua argumen, jadi jika Anda melakukannya sudo foo bar
, itu akan berjalan di command prompt foo bar
karena parameternya adalah foo dan bar, dan %*
kembali foo bar
. cd /d %CD%
adalah perintah untuk membuka direktori saat ini. Ini akan memastikan bahwa ketika Anda membuka jendela yang ditinggikan, direktori akan sama dengan jendela normal. yang &&
berarti bahwa jika perintah pertama berhasil, jalankan perintah kedua.
The /c
adalah parameter cmd untuk menutup jendela setelah perintah selesai, dan /k
merupakan parameter cmd untuk menjaga jendela yang terbuka.
Kredit untuk Adam Plocher untuk tinggal dalam kode direktori saat ini.
C:\Windows\System32
.
powershell -Command "Start-Process cmd -Verb RunAs -ArgumentList '/k cd /d %CD% && %*'"
echo
garis satu dan tiga dengan melakukan prepending @
ke garis PowerShell?
Semua jawaban menjelaskan cara meningkatkan perintah Anda di host konsol baru .
Yang membuat saya terhibur adalah tidak ada alat yang berperilaku seperti itu *nix sudo
, memungkinkan untuk menjalankan perintah di dalam konsol saat ini .
Jadi, saya menulis: gsudo
Kode Sumber https://github.com/gerardog/gsudo
Melalui sendok
scoop install gsudo
Atau melalui Chocolatey
choco install gsudo
Penginstalan manual:
Saya telah membuat wsudo
, sudo
alat CLI seperti open-source untuk Windows untuk menjalankan program atau perintah dengan hak yang ditinggikan, dalam konteks direktori saat ini . Ini tersedia sebagai paket Chocolatey .
Saya sering menggunakannya untuk hal-hal seperti mengonfigurasi agen pembuat, hal-hal admin seperti sfc /scannow
, dism /online /cleanup-image /restorehealth
atau hanya untuk menginstal / memperbarui paket Chocolatey lokal saya. Gunakan dengan resiko Anda sendiri.
choco install wsudo
Chocolatey harus sudah terpasang.
wsudo
adalah sudo
alat mirip Linux untuk Windows untuk menjalankan program dengan hak yang lebih tinggi (sebagai Administrator) dari prompt perintah shell non-admin dan mempertahankan direktori saat ini.
Implementasi ini tidak bergantung pada Windows Script Host ( CScript
) lama. Sebaliknya, ia menggunakan skrip PowerShell 5.1 pembantu yang memanggil "Start-Process -Wait -Verb runAs ..."
cmdlet. Sistem Anda kemungkinan besar sudah menginstal PowerShell 5.x, jika tidak, Anda akan ditawarkan untuk menginstalnya sebagai dependensi.
wsudo
menjalankan program atau perintah inline dengan hak tinggi di direktori saat ini. Contoh:
wsudo .\myAdminScript.bat
wsudox "del C:\Windows\Temp\*.* && pause"
wasudo cup all -y
wasudox start notepad C:\Windows\System32\drivers\etc\hosts
Untuk lebih jelasnya, kunjungi repro GitHub .
wasudo
membuatnya lebih mudah untuk Anda. Saya sendiri kebanyakan tinggal di terminal konsol terintegrasi VSCode, jadi saya hanya mengetik di wasudo
sana :) Perbaikan berikutnya akan mewarisi lingkungan vars .
runas
Perintah mengharuskan pengguna untuk mengetikkan kata sandi. Jika Anda tidak ingin mengetikkan kata sandi dan hanya ingin mengklik dialog UAC, gunakan Start-Process -Verb runas
di PowerShell sebagai ganti runas
perintah.
Anda biasanya tidak akan melakukannya, karena Anda tidak akan menjalankannya di bawah * nix. Lakukan pengembangan di direktori pengguna, dan terapkan setelahnya ke direktori sistem.
di Windows, Anda dapat menggunakan perintah runas. Untuk pengguna linux, ada beberapa alternatif sudo di windows, Anda bisa lihat ini
http://helpdeskgeek.com/free-tools-review/5-windows-alternatives-linux-sudo-command/
Ada jenisnya. Saya membuat Sudo untuk Windows pada tahun 2007? 08? Ini kertas keamanan yang saya tulis tentang itu - https://www.sans.org/reading-room/whitepapers/bestprac/sudo-windows-sudowin-1726 . Cukup yakin http://sudowin.sf.net masih berfungsi juga.
Anda dapat menggunakan perintah runas - http://technet.microsoft.com/en-us/library/bb490994.aspx atau sudowin - http://sourceforge.net/projects/sudowin/
Skrip vbs berikut memungkinkan untuk meluncurkan perintah yang diberikan dengan argumen dengan elevasi dan meniru perilaku perintah sudo unix asli untuk sekumpulan kasus bekas yang terbatas (tidak akan menyimpan kredensial atau memungkinkan untuk benar-benar mengeksekusi perintah dengan kredensial berbeda). Saya memakainya C:\Windows\System32
.
Set objArgs = WScript.Arguments
exe = objArgs(0)
args = ""
IF objArgs.Count >= 2 Then
args = args & objArgs(1)
End If
For it = 2 to objArgs.Count - 1
args = args & " " & objArgs(it)
Next
Set objShell = CreateObject( "WScript.Shell")
windir=objShell.ExpandEnvironmentStrings("%WINDIR%")
Set objShellApp = CreateObject("Shell.Application")
objShellApp.ShellExecute exe, args, "", "runas", 1
set objShellApp = nothing
Contoh penggunaan pada prompt perintah sudo net start service
Saya rasa saya mencoba langkah-langkah di bawah ini setelah melakukan penelitian & berhasil
1. Instal scoop menggunakan PowerShell 3 (iex (new-object net.webclient) .downloadstring (' https://get.scoop.sh ')) 2. lakukan scoop install --global sudo 3. pastikan jalur (C: \ Users \\ scoop \ shims & C: \ ProgramData \ scoop \ shims) ditambahkan dalam variabel jalur lingkungan.
Tidak ada perintah sudo dalam kasus windows dan juga tidak perlu memasukkan $. Untuk menginstal Angular CLI melalui command prompt node.js di windows, saya hanya menulis npm install -g @ angular / cli lalu tekan Enter. Ini bekerja dengan baik.
Di Windows Powershell Anda dapat menggunakan perintah Mulai-Proses dengan opsi -Verb RunAs
untuk memulai dan meningkatkan proses. Berikut adalah contoh fungsi sudo saya:
function sudo {
Start-Process @args -verb runas
}
Contoh: Buka file host sebagai Admin di notepad
sudo notepad C:\Windows\System32\drivers\etc\hosts
Saya senang membantu Anda.
Untuk membuat perintah sudo ikuti langkah-langkah: -
Semoga ini bisa membantu Anda
Untuk menjalankan perintah sebagai admin di Powershell yang tidak ditinggikan, Anda dapat menggunakan Start-Process
secara langsung, dengan opsi yang tepat, khususnya -Verb runas
.
Ini jauh lebih berbelit-belit daripada sudo
, terutama karena Anda tidak bisa hanya menggunakan kembali perintah sebelumnya dengan opsi tambahan. Anda perlu menentukan argumen untuk perintah Anda secara terpisah.
Berikut adalah contoh, menggunakan perintah rute untuk mengubah gateway:
Ini gagal karena kami tidak berada dalam PS yang ditinggikan:
> route change 0.0.0.0 mask 0.0.0.0 192.168.1.3
The requested operation requires elevation.
Ini berfungsi setelah menerima UAC:
> Start-Process route -ArgumentList "change 0.0.0.0 mask 0.0.0.0 192.168.1.3" -Verb runas
Atau untuk perintah yang membutuhkan cmd.exe
:
> Start-Process cmd -ArgumentList "/c other_command arguments ..." -Verb runas