Χρήση δήλωσης στο PowerShell

Chrese Deloses Sto Powershell



Το PowerShell είναι ένα ισχυρό κέλυφος γραμμής εντολών και γλώσσα δέσμης ενεργειών που χρησιμοποιείται ως επί το πλείστον για τον έλεγχο συστημάτων υπολογιστών και την αυτοματοποίηση των εργασιών διαχείρισης. Η χρήση δηλώσεων είναι ένα από τα πιο κρίσιμα θεμελιώδη στοιχεία του PowerShell. Ειδικότερα, το « χρησιμοποιώντας Η δήλωση διαδραματίζει κρίσιμο ρόλο στη διαχείριση των πόρων και στη διασφάλιση αποτελεσματικής εκτέλεσης κώδικα.

Αυτό το άρθρο θα διερευνήσει διάφορες πτυχές της δήλωσης 'χρήση' στο PowerShell, συμπεριλαμβανομένης της σύνταξης, του σκοπού και των πρακτικών εφαρμογών της.







Σκοπός της δήλωσης «χρήσης».

Η δήλωση 'χρήση' σάς επιτρέπει να καθορίσετε ποιοι χώροι ονομάτων χρησιμοποιούνται στη συνεδρία. Με την προσθήκη χώρων ονομάτων, μπορείτε να εισαγάγετε κλάσεις από λειτουργικές μονάδες και συγκροτήσεις σεναρίων και να απλοποιήσετε τη χρήση κλάσεων και μελών .NET.



ΠΡΕΠΕΙ της δήλωσης «χρήσης».

  • Η δήλωση 'χρήση' πρέπει να εμφανίζεται πριν από οποιαδήποτε άλλη δήλωση δέσμης ενεργειών ή λειτουργικών μονάδων. Δεν μπορεί να προηγείται καμία δήλωση χωρίς σχολιασμό, συμπεριλαμβανομένων των παραμέτρων.
  • Οποιεσδήποτε μεταβλητές δεν πρέπει να υπάρχουν στη δήλωση 'χρήση'.
  • Η δήλωση 'using' δεν πρέπει να συγχέεται με τον τροποποιητή εμβέλειας 'using:' για μεταβλητές. Και οι δύο είναι διαφορετικοί ως προς τον σκοπό και τη σημασία τους.

Σύνταξη της δήλωσης 'χρήση'.



Η σύνταξη για τη δήλωση 'χρήση' είναι:





χρησιμοποιώντας χώρο ονομάτων < .NET-χώρος ονομάτων >

Ας δούμε γενικά το ακόλουθο παράδειγμα:



χρησιμοποιώντας χώρο ονομάτων System.IO

$Bytes = [ Αρχείο ] ::ReadAllBytes ( 'D:\c sharp\Linuxhit1.txt' )
[ Πληροφορίες αρχείου ] ::νέος ( 'D:\c sharp\Linuxhit1.txt' )

Στον παραπάνω κώδικα, ορίσαμε αρχικά τον χώρο ονομάτων 'System.IO'. Η δεύτερη γραμμή του προγράμματος, [File]::ReadAllBytes(‘D:c sharpLinuxhit1.txt’), διαβάζει κάθε byte από το παρεχόμενο αρχείο και τα τοποθετεί στη μεταβλητή $Bytes. Στην τρίτη γραμμή, το [FileInfo]::new('D:c sharpLinuxhit1.txt') δημιουργεί μια νέα παρουσία της κλάσης FileInfo και επιστρέφει το αντικείμενο FileInfo.

Δήλωση «χρήσης» για Ενότητες

Μπορούμε επίσης να χρησιμοποιήσουμε τη δήλωση “using” για τη φόρτωση κλάσεων μιας ενότητας.

Σύνταξη

χρησιμοποιώντας ενότητα < ενότητα-όνομα >

Σε αυτήν τη σύνταξη, το '', μια πλήρης προδιαγραφή λειτουργικής μονάδας ή μια διαδρομή προς ένα αρχείο λειτουργικής μονάδας μπορεί να χρησιμοποιηθεί ως τιμή για το 'module name'.

Μπορείτε να χρησιμοποιήσετε είτε μια πλήρως αναγνωρισμένη είτε σχετική διαδρομή όταν το 'module-name>' είναι μια διαδρομή. Όταν μια δήλωση 'χρήση' υπάρχει σε ένα σενάριο, μια σχετική διαδρομή επιλύεται σε αυτό το σενάριο.

Το PowerShell αναζητά την παρεχόμενη λειτουργική μονάδα στο PSModulePath όταν το '' είναι ένα όνομα ή μια προδιαγραφή λειτουργικής μονάδας. Τα ακόλουθα κλειδιά συνθέτουν το hashtable που είναι μια προδιαγραφή λειτουργικής μονάδας:

Όνομα ενότητας - Απαιτείται. Ονομάζει την εν λόγω ενότητα.

Προαιρετικό GUID – καθορίζει το GUID της μονάδας.

Επιπλέον, πρέπει να καθορίσετε ένα από τα τρία κλειδιά που αναφέρονται παρακάτω.

ModuleVersion – Μια ελάχιστη επιτρεπόμενη έκδοση της μονάδας καθορίζεται μέσω της ιδιότητας «ModuleVersion».

MaximumVersion – Καθορίζει την υψηλότερη επιτρεπόμενη έκδοση της ενότητας.

Απαιτούμενη Έκδοση – Καθορίζει την ακριβή, απαραίτητη έκδοση της μονάδας χρησιμοποιώντας το 'RequiredVersion'. Τα άλλα κλειδιά έκδοσης δεν μπορούν να χρησιμοποιηθούν με αυτό.

Η μονάδα ρίζας (ModuleToProcess) μιας δυαδικής μονάδας ή μιας λειτουργικής μονάδας δέσμης ενεργειών εισάγεται με τη δήλωση λειτουργικής μονάδας 'χρήση'. Οι κλάσεις που καθορίζονται σε ένθετες λειτουργικές μονάδες ή σενάρια που προέρχονται από κουκκίδες στη λειτουργική μονάδα δεν εισάγονται αξιόπιστα. Οποιεσδήποτε κλάσεις θέλετε να είναι διαθέσιμες σε χρήστες εκτός της λειτουργικής μονάδας θα πρέπει να προσδιορίζονται στη λειτουργική μονάδα ρίζας.

Εδώ είναι ένα παράδειγμα:

χρησιμοποιώντας την ενότητα PSReadline

Δήλωση «χρήσης» για συναρμολόγηση

Η δήλωση 'using' μπορεί επίσης να χρησιμοποιηθεί για την προφόρτωση τύπων από ένα συγκρότημα .NET.

Σύνταξη

χρησιμοποιώντας συναρμολόγηση < .NET-μονοπάτι συναρμολόγησης >

Σε αυτήν τη σύνταξη, όταν φορτώνεται μια συγκρότηση, οι τύποι .NET από αυτήν τη συγκρότηση φορτώνονται εκ των προτέρων στο σενάριο πριν αναλυθεί. Ως αποτέλεσμα, είναι δυνατή η ανάπτυξη νέων κλάσεων PowerShell που κάνουν χρήση των προφορτωμένων τύπων συγκροτημάτων.

Δείτε ένα παράδειγμα εφαρμογής της δήλωσης 'χρήση' με 'συναρμολόγηση':

χρησιμοποιώντας τη συναρμολόγηση System.Windows.Forms

Σε αυτήν την εντολή, έχουμε φορτώσει τη συναρμολόγηση ' System.Windows.Forms' στο PowerShell χρησιμοποιώντας τη δήλωση 'using'.

Δήλωση 'χρήση' για Hashtable Keys

' Πίνακες κατακερματισμού ” είναι προσαρμόσιμες δομές δεδομένων που χρησιμοποιούνται στο PowerShell για διάφορους σκοπούς, συμπεριλαμβανομένης της αποθήκευσης δεδομένων διαμόρφωσης, της παροχής ορισμών σε cmdlet και της αποθήκευσης δεδομένων σε σενάρια.

Ο κρυπτογραφικός κατακερματισμός για τη συμβολοσειρά ' LinuxHint! ' λαμβάνεται μέσω του ακόλουθου σεναρίου:

χρησιμοποιώντας χώρο ονομάτων System.Text
χρησιμοποιώντας χώρο ονομάτων System.IO [ σειρά ] $string = 'LinuxHint!'
[ σειρά ] $algorithm = 'SHA1'

[ ψηφιόλεξη [ ] ] $stringbytes = [ UnicodeEncoding ] :: Unicode.GetBytes ( $string )

[ Ρεύμα ] $memorystream = [ MemoryStream ] ::νέος ( $stringbytes )
$hashfromstream = Get-FileHash -InputStream $memorystream `
-Algorithm $algorithm
$hashfromstream .Hash.ToString ( )

Ο παραπάνω κώδικας PowerShell ξεκινά με την εισαγωγή των χώρων ονομάτων που απαιτούνται για τις λειτουργίες αρχείων και την κωδικοποίηση. Η συμβολοσειρά εισόδου και ο αλγόριθμος κατακερματισμού (σε αυτήν την περίπτωση ' SHA1 ”), στη συνέχεια ορίζονται. Στη συνέχεια, η συμβολοσειρά εισόδου κωδικοποιείται χρησιμοποιώντας ' Unicode ” για να δημιουργήσετε έναν πίνακα byte.

Το περιεχόμενο του πίνακα byte χρησιμοποιείται στη συνέχεια για τη δημιουργία ενός ' ροή μνήμης '. Η τιμή κατακερματισμού από τη ροή μνήμης υπολογίζεται χρησιμοποιώντας τον παρεχόμενο αλγόριθμο 'SHA1' από το ' Get-FileHash ” cmdlet. Το σενάριο τελειώνει εκτυπώνοντας την τιμή κατακερματισμού που λαμβάνεται ως συμβολοσειρά στην έξοδο.

Παραγωγή

συμπέρασμα

Ο ' χρησιμοποιώντας Η δήλωση στο PowerShell είναι ένα ισχυρό εργαλείο για τον καθορισμό χώρων ονομάτων, λειτουργικών μονάδων ή συγκροτημάτων. Η σύνταξη και ο σκοπός του παρέχουν μια τυποποιημένη και ασφαλή προσέγγιση για το χειρισμό των πόρων, τη διευκόλυνση της σωστής απόρριψης και τη μείωση της αντιγραφής κώδικα.