Apakah PowerShell Bekerja pada Sistem Operasi Lain Selain Windows?
Ini bisa sangat menyebalkan ketika profesor Anda mengatakan satu hal tentang PowerShell dan berbagai situs web yang tampaknya menawarkan bukti kuat yang bertentangan. Apakah PowerShell benar-benar berfungsi pada sistem non-Windows atau tidak? Posting Q&A Pengguna Super hari ini memiliki jawaban untuk pertanyaan pembaca yang bingung.
Sesi Tanya Jawab hari ini datang kepada kami berkat SuperUser-subdivisi Stack Exchange, pengelompokan situs web Q&A berbasis komunitas.
Pertanyaan
Pembaca SuperUser FredSavage187 ingin tahu apakah PowerShell bekerja pada sistem operasi lain selain Windows:
Profesor sains komputer saya baru-baru ini memberi kami sebuah kuis dan salah satu pertanyaannya adalah, "Benar atau Salah: PowerShell berfungsi pada Windows, Mac, dan Linux". Jawaban yang benar adalah "salah" dan dia menyatakan bahwa PowerShell adalah satu-satunya Windows. Tetapi saya menemukan beberapa situs web yang mengatakan sebaliknya:
PowerShell bersumber terbuka dan tersedia di Linux [Microsoft Azure Blog]
Repositori PowerShell [GitHub]
Yang mana yang benar? Apakah PowerShell berfungsi di Linux dan Mac OS serta Windows?
Apakah PowerShell berfungsi pada sistem operasi lain selain Windows?
Jawabannya
Kontributor SuperUser Ben N memiliki jawaban untuk kami:
Iya nih. Sebagian besar PowerShell adalah .NET, sehingga dapat berjalan pada sistem operasi apa pun yang memiliki Common Language Runtime (CLR). Di Windows, itulah .NET Framework. Untuk sistem operasi lain, termasuk Linux, Anda dapat menggunakan CoreCLR, subset open-source, cross-platform dari .NET Framework.
Seperti yang Anda pelajari di repositori PowerShell di GitHub, beberapa sistem operasi dan distribusi didukung. Sebagai contoh, berikut adalah petunjuk untuk Ubuntu dan peragaan:
Orang bisa berpendapat bahwa tidak semua PowerShell tersedia di lingkungan non-Windows karena beberapa fitur bergantung pada pustaka yang hanya ditemukan di Windows. Itu ParsedHtml properti di HtmlWebResponseObject jenis dikembalikan oleh Invoke-WebRequest, misalnya, hanya berguna pada Windows karena ia memegang objek COM yang berasal dari pustaka yang tidak dikelola, mshtml.dll untuk lebih spesifik. Di platform lain, tidak ada apa pun di sana. Dan, tentu saja, ada cmdlet untuk mengelola sistem yang hanya ditemukan di Windows, seperti aplikasi Modern (Dapatkan-AppxPackage, sebagai contoh).
Meski begitu, infrastruktur PowerShell bekerja dengan sangat baik pada sistem operasi lain, banyak cmdlet dapat digunakan di mana saja, dan dukungan hanya menjadi lebih baik.
Punya sesuatu untuk ditambahkan ke penjelasan? Berbunyi dalam komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang mengerti teknologi lainnya? Lihat utas diskusi lengkap di sini.
Kredit Gambar: Jeff Hicks (Petri IT Knowledgebase)