Jika saya memiliki instance PowerShell ISE yang sedang berjalan dan saya menginstal sesuatu yang memodifikasi PATH atau saya memodifikasinya dengan cara apa pun di luar PowerShell maka saya perlu me-restart PowerShell agar dapat melihat variabel PATH yang diperbarui.
Apakah ada cara untuk memuat ulang jalur dari dalam PowerShell tanpa memulai ulang?
powershell
console
powershell-ise
rampok
sumber
sumber
refreshenv
. Ini pada dasarnya menjalankan versi komentar rob yang lebih rumit .refreshenv
tidak berhasil. Jawabannya di sini ('Komentar Robs') berhasil dengan baik. Jadi, mungkin ada beberapa situasi di mana satu pendekatan bekerja dan yang lainnya tidak ...refreshenv
itu tidak akan berfungsi. Satu-refreshenv
satunya yang berfungsi pada shell subseqent dibuka.Coba dapatkan jalur mesin dan tetapkan ke jalur sesi.
sumber
Cara termudah, gunakan Chocolatey (freeware). Ini bekerja untuk CMD dan PowerShell. Maka Anda akan dapat memuat ulang PATH (dengan ekspansi variabel) dengan perintah sederhana:
Instalasi dari cmd (memerlukan hak administrator):
Contoh penggunaan:
sumber
refreshenv
tidak bekerja untuk saya (Windows 10). Saya masih harus membuka jendela baru agar bisa berlaku.refreshenv
juga tidak bekerja di sini. Mengerjakan beberapa skrip di lingkungan Windows Sandbox dan path hanya menolak untuk dimutakhirkan kecuali sesi PS baru dimulai.Berdasarkan jawaban mpen , ini adalah fungsi PowerShell:
Lalu panggil saja
refresh-path
.sumber
Jika jalur Anda berisi variabel lingkungan yang tidak ditentukan di awal sesi, Anda juga ingin memperluasnya:
Bagi saya ini berguna setelah menginstal NVM yang mendefinisikan dan menambahkan% NVM_HOME% ke path.
Untuk mengambil kesimpulan logis ini Anda bisa menggunakan fungsi rekursif ini untuk memperluas:
Dan kemudian gunakan:
Saya telah membuka masalah untuk menambahkan solusi ini
refreshenv
dari Chocolatey.sumber
Hanya untuk menambahkan jawaban lain, Anda dapat memastikan Anda tidak menambahkan gabungan berlebihan dengan memfilter jika pengguna memiliki jalur kosong.
Atau, lebih bermanfaat, jika Anda menjalankan skrip yang menambah variabel lingkungan yang berbeda atau lebih, gunakan fungsi untuk mengatur ulang semuanya
sumber