Bagaimana cara mengatur variabel lingkungan dari file batch di PowerShell?

2

Saya perlu mengatur variabel lingkungan dari file batch. Di Linux, saya bisa menggunakan ini:

source key.sh

Bagaimana saya melakukan ini di PowerShell? Ketika saya berlari key.bat, itu memberi kesalahan. Saya berlari .\key.bat dan itu mengatur variabel, tetapi tidak muncul ketika saya menjalankan $env:KEY.

Chloe
sumber
@ Jadi saya menemukan halaman itu pada pencarian saya, tetapi tidak mengatakan apa-apa tentang file batch dan menjaga variabel lingkungan set file batch.
Chloe
Anda tidak dapat melakukannya hanya sebagai .bat skrip berjalan dalam proses anak (yang tidak mentransfer variabel lingkungan berubah ke induknya) Terkait: Bagaimana saya bisa mencari variabel dari file .bat ke dalam skrip PowerShell? .
JosefZ
Dalam semua kejujuran, jika Anda perlu menjalankan kode PowerShell gunakan PowerShell dan bukan file batch. Bahkan dalam batch Anda dapat menjalankan PowerShell dan membiarkannya langsung menjalankan perintah (dengan asumsi kebijakan eksekusi Anda mengizinkannya). Halaman selanjutnya merinci bahwa Anda perlu menggunakan metode .Net untuk membuatnya "lebih permanen". Anda mungkin ingin sedikit menjelaskan apa sebenarnya yang ingin Anda jalankan dan apa hasil yang Anda harapkan.
Seth
Anda juga bisa meneruskan set variabel dalam batch ke skrip PowerShell atau sebaliknya tergantung pada apa yang sebenarnya Anda coba lakukan. Saya pikir klarifikasi diperlukan sehingga jelas bagaimana Anda memiliki pengaturan proses Anda.
Pimp Juice IT