Ini bisa sangat membuat frustasi ketika profesor Anda mengatakan satu hal tentang PowerShell dan berbagai situs web tampaknya menawarkan bukti nyata yang bertentangan. Apakah PowerShell benar-benar bekerja pada sistem non-Windows atau tidak? Posting SuperUser Q & A saat ini memiliki jawaban untuk pertanyaan pembaca yang bingung.
Sesi Tanya & Jawab hari ini hadir untuk memberi kami hak milik SuperUser-sub divisi Stack Exchange, pengelompokan situs web Q & A berbasis komunitas.
Pembaca SuperUser FredSavage187 ingin tahu apakah PowerShell berfungsi pada sistem operasi lain selain Windows:
Profesor ilmu komputer saya baru-baru ini memberi kami kuis dan salah satu pertanyaannya adalah, "Benar atau Salah: PowerShell berfungsi di Windows, Mac, dan Linux". Jawaban yang benar adalah "salah" dan dia berpendapat bahwa PowerShell adalah satu-satunya hal Windows. Tetapi saya menemukan beberapa situs web yang mengatakan sebaliknya:
PowerShell bersumber terbuka dan tersedia di Linux [Microsoft Azure Blog]
PowerShell Repository [GitHub]
Yang mana yang benar? Apakah PowerShell berfungsi di Linux dan Mac OS serta Windows?
Apakah PowerShell berfungsi pada sistem operasi lain selain Windows?
Kontributor SuperUser Ben N memiliki jawabannya untuk kami:
Iya nih. Sebagian besar PowerShell adalah .NET, sehingga dapat dijalankan pada sistem operasi apa pun yang memiliki Common Language Runtime (CLR). Di Windows, itu adalah .NET Framework. Untuk sistem operasi lain, termasuk Linux, Anda dapat menggunakan CoreCLR, sub-platform open-source, dari .NET Framework.
Ketika Anda belajar di repositori PowerShell di GitHub, cukup beberapa sistem operasi dan distribusi yang didukung. Sebagai contoh, berikut adalah instruksi untuk Ubuntu dan demonstrasi:
Orang dapat menyatakan 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 ketik dikembalikan oleh Invoke-WebRequest, misalnya, hanya berguna pada Windows karena memegang objek COM yang berasal dari pustaka yang tidak dikelola, mshtml.dll untuk lebih spesifik. Pada 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).
Namun demikian, infrastruktur PowerShell bekerja dengan sangat baik pada sistem operasi lain, banyak cmdlet yang dapat digunakan di mana saja, dan dukungan hanya semakin baik.
Memiliki sesuatu untuk ditambahkan ke penjelasan? Bicaralah di komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang paham teknologi lainnya? Lihat diskusi lengkap di sini.
Kredit Gambar: Jeff Hicks (Petri IT Knowledgebase)