Laman » bagaimana untuk » Adakah PowerShell Berfungsi Sistem Operasi Lain Selain Windows?

    Adakah PowerShell Berfungsi Sistem Operasi Lain Selain Windows?

    Ia boleh menjadi sangat mengecewakan apabila profesor anda berkata satu perkara mengenai PowerShell dan pelbagai laman web seolah-olah menawarkan bukti kukuh sebaliknya. Adakah PowerShell sebenarnya berfungsi pada sistem bukan Windows atau tidak? Siaran Q & A SuperUser hari ini mempunyai jawapan kepada soalan pembaca yang membingungkan.

    Sesi Soalan & Jawapan hari ini datang kepada kami dengan ihsan SuperUser-bahagian pembahagian Stack Exchange, kumpulan yang diketuai oleh komuniti laman web Q & A.

    Soalan

    Pembaca SuperUser FredSavage187 ingin mengetahui sama ada PowerShell berfungsi pada sistem operasi lain selain Windows:

    Profesor sains komputer saya baru-baru ini memberi kami satu kuiz dan salah satu soalan ialah, "Benar atau Salah: PowerShell berfungsi pada Windows, Mac, dan Linux". Jawapan yang betul adalah "palsu" dan dia berpendapat bahawa PowerShell adalah satu-satunya perkara Windows. Tetapi saya dapati beberapa laman web yang mengatakan sebaliknya:

    PowerShell dibuka bersumber dan boleh didapati di Linux [Microsoft Azure Blog]

    Repositori PowerShell [GitHub]

    Mana yang betul betul? Adakah PowerShell berfungsi pada Linux dan Mac OS serta Windows?

    Adakah PowerShell berfungsi pada sistem operasi lain selain Windows?

    Jawapan

    Penyumbang SuperUser Ben N mempunyai jawapan untuk kami:

    Ya. Kebanyakan PowerShell adalah .NET, supaya ia boleh berjalan di mana-mana sistem operasi yang mempunyai Runtime Language Common (CLR). Di Windows, itu ialah Rangka Kerja NET. Untuk sistem pengendalian lain, termasuk Linux, anda boleh menggunakan CoreCLR, sumber terbuka, subset silang platform dari Rangka Kerja.NET..

    Seperti yang anda pelajari di repositori PowerShell di GitHub, agak beberapa sistem operasi dan pengedaran disokong. Sebagai contoh, berikut adalah arahan untuk Ubuntu dan demonstrasi:

    Orang boleh berhujah bahawa tidak semua PowerShell tersedia dalam persekitaran bukan Windows kerana sesetengah ciri bergantung pada perpustakaan yang hanya terdapat di Windows. The ParsedHtml harta pada HtmlWebResponseObject jenis dikembalikan oleh Invoke-WebRequest, contohnya, hanya berguna pada Windows kerana ia memegang objek COM yang berasal dari perpustakaan yang tidak dikelola, mshtml.dll untuk menjadi khusus. Di platform lain, tidak ada apa-apa di sana. Dan, tentu saja, terdapat cmdlet untuk menguruskan sistem yang hanya terdapat di Windows, seperti aplikasi Moden (Get-AppxPackage, sebagai contoh).

    Namun begitu, infrastruktur PowerShell berfungsi dengan baik dengan sistem operasi lain, banyak cmdlet boleh digunakan di mana saja, dan sokongan hanya akan menjadi lebih baik.


    Mempunyai sesuatu untuk menambah penjelasannya? Bunyi dalam komen. Ingin membaca lebih banyak jawapan dari pengguna Stack Exchange yang berteknologi tinggi? Lihat thread perbincangan penuh di sini.

    Kredit Imej: Jeff Hicks (Petri IT Knowledgebase)