Το PowerShell λειτουργεί σε άλλα λειτουργικά συστήματα εκτός από τα Windows;
Μπορεί να είναι πολύ απογοητευτικό όταν ο καθηγητής σας λέει ένα πράγμα για το PowerShell και διάφορες ιστοσελίδες φαίνεται να προσφέρουν σταθερή απόδειξη για το αντίθετο. Το PowerShell λειτουργεί πραγματικά σε συστήματα που δεν ανήκουν στα Windows ή όχι; Η σημερινή θέση Q & A της SuperUser έχει την απάντηση σε μια ερώτηση του προβληματισμένου αναγνώστη.
Η σημερινή συνάντηση ερωτήσεων και απαντήσεων έρχεται σε επαφή με το SuperUser - μια υποδιαίρεση του Stack Exchange, μια κοινότητα που κατευθύνεται από τους ιστότοπους ερωτήσεων & απαντήσεων.
Το ερώτημα
Ο αναγνώστης SuperUser FredSavage187 θέλει να μάθει εάν το PowerShell λειτουργεί σε άλλα λειτουργικά συστήματα εκτός των Windows:
Ο καθηγητής υπολογιστών μου μας έδωσε πρόσφατα ένα κουίζ και μία από τις ερωτήσεις ήταν: "Αληθινό ή ψέμα: το PowerShell λειτουργεί σε Windows, Mac και Linux". Η σωστή απάντηση ήταν "ψευδής" και υποστηρίζει ότι το PowerShell είναι κάτι μόνο για τα Windows. Αλλά βρήκα δυο ιστοσελίδες που λένε διαφορετικά:
Το PowerShell είναι ανοιχτό και είναι διαθέσιμο στο Linux [Blog της Microsoft Azure]
Αποθήκη PowerShell [GitHub]
Ποιο είναι πραγματικά σωστό; Το PowerShell λειτουργεί σε Linux και Mac OS, καθώς και στα Windows?
Το PowerShell λειτουργεί σε άλλα λειτουργικά συστήματα εκτός από τα Windows?
Η απάντηση
Ο συνεργάτης SuperUser Ben N έχει την απάντηση για εμάς:
Ναί. Ένα μεγάλο μέρος του PowerShell είναι το .NET, οπότε μπορεί να εκτελεστεί σε οποιοδήποτε λειτουργικό σύστημα που έχει το Common Language Runtime (CLR). Στα Windows, αυτό είναι το .NET Framework. Για άλλα λειτουργικά συστήματα, συμπεριλαμβανομένου του Linux, μπορείτε να χρησιμοποιήσετε το CoreCLR, ένα υποσύνολο ανοιχτού κώδικα, cross-platform του .NET Framework.
Όπως μάθατε στο χώρο αποθήκευσης του PowerShell στο GitHub, υποστηρίζονται αρκετά λειτουργικά συστήματα και διανομές. Για παράδειγμα, εδώ είναι οι οδηγίες για το Ubuntu και μια επίδειξη:
Κάποιος θα μπορούσε να υποστηρίξει ότι δεν είναι όλα τα PowerShell διαθέσιμα σε περιβάλλοντα που δεν είναι Windows, καθώς κάποιες λειτουργίες εξαρτώνται από βιβλιοθήκες που βρίσκονται μόνο στα Windows. ο ParsedHtml ιδιοκτησία στο HtmlWebResponseObject τον τύπο που επέστρεψε Invoke-WebRequest, για παράδειγμα, είναι χρήσιμη μόνο στα Windows επειδή περιέχει ένα αντικείμενο COM που προέρχεται από μια μη διαχειριζόμενη βιβλιοθήκη, mshtml.dll να είσαι συγκεκριμένος. Σε άλλες πλατφόρμες, δεν υπάρχει τίποτα εκεί. Και, φυσικά, υπάρχουν cmdlets για τη διαχείριση συστημάτων που βρίσκονται μόνο στα Windows, όπως οι σύγχρονες εφαρμογές (Get-AppxPackage, για παράδειγμα).
Παρ 'όλα αυτά, η υποδομή PowerShell λειτουργεί τέλεια σε άλλα λειτουργικά συστήματα, πολλά από τα cmdlet μπορούν να χρησιμοποιηθούν οπουδήποτε και η υποστήριξη γίνεται όλο και καλύτερη.
Έχετε κάτι να προσθέσετε στην εξήγηση; Απενεργοποιήστε τα σχόλια. Θέλετε να διαβάσετε περισσότερες απαντήσεις από άλλους τεχνολογικούς χρήστες Stack Exchange; Δείτε το πλήρες νήμα συζήτησης εδώ.
Συντελεστές εικόνας: Jeff Hicks (Petri IT Knowledgebase)