Πώς να διορθώσετε ότι δεν λειτουργεί το Catch PowerShell;

Για να διορθώσετε αυτό, αναζητήστε λανθασμένη σύνταξη

  • Εάν το Try-Catch δεν λειτουργεί στο PowerShell, πρέπει να ελέγξετε για εσφαλμένες τιμές σύνταξης και ενεργειών σφάλματος.
  • Αυτός ο οδηγός θα εξηγήσει τους διαφορετικούς τρόπους επίλυσης του προβλήματος.
Δοκιμάστε το catch powershell που δεν λειτουργεί

ΧΕΓΚΑΤΑΣΤΑΣΗ ΚΑΝΟΝΤΑΣ ΚΛΙΚ ΣΤΟ ΑΡΧΕΙΟ ΛΗΨΗΣ

Για να διορθώσετε διάφορα προβλήματα υπολογιστή, συνιστούμε το Restoro PC Repair Tool:Αυτό το λογισμικό θα επιδιορθώσει κοινά σφάλματα υπολογιστή, θα σας προστατεύσει από απώλεια αρχείων, κακόβουλο λογισμικό, αποτυχία υλικού και θα βελτιστοποιήσει τον υπολογιστή σας για μέγιστη απόδοση. Διορθώστε προβλήματα υπολογιστή και αφαιρέστε τους ιούς τώρα με 3 εύκολα βήματα:
  1. Κατεβάστε το Restoro PC Repair Tool που συνοδεύεται από πατενταρισμένες τεχνολογίες (διαθέσιμο δίπλωμα ευρεσιτεχνίας εδώ).
  2. Κάντε κλικ Εναρξη σάρωσης για να βρείτε ζητήματα των Windows που θα μπορούσαν να προκαλούν προβλήματα στον υπολογιστή.
  3. Κάντε κλικ Φτιάξ'τα όλα για να διορθώσετε ζητήματα που επηρεάζουν την ασφάλεια και την απόδοση του υπολογιστή σας.
  • Το Restoro έχει ληφθεί από 0 αναγνώστες αυτόν τον μήνα.

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

Σε αυτόν τον οδηγό, θα καλύψουμε όλους τους τρόπους επίλυσης του προβλήματος μαζί με τις πιθανές αιτίες του προβλήματος. Ας αρχίσουμε!

Τι προκαλεί το πρόβλημα Try-Catch που δεν λειτουργεί στο PowerShell;

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

  • Προεπιλεγμένο σύνολο ErrorAction – Αν το Το ErrorAction έχει οριστεί σε Continue, τότε το Try-Catch δεν θα λειτουργήσει όπως αναμένεται.
  • Συντακτικά λάθη – Εάν η σύνταξη που χρησιμοποιείται είναι ακατάλληλη, η μορφοποίηση είναι εσφαλμένη ή λείπουν λέξεις-κλειδιά, το Try-Catch δεν θα λειτουργήσει.
  • Cmdlet ή συμπεριφορά συνάρτησης – Ορισμένες λειτουργίες και cmdlet συνοδεύονται από τη συμπεριφορά χειρισμού σφαλμάτων, η οποία μπορεί να μην είναι συμβατή με το Try-Catch.
  • Λανθασμένη λογική ή χρήση μεταβλητών – Εάν υπάρχει ακατάλληλη χρήση του μεταβλητές ή εσφαλμένη λογική, τότε το Try-Catch δεν θα λειτουργήσει.

Τι μπορώ να κάνω εάν το Try-Catch δεν λειτουργεί στο PowerShell;

1. Ελέγξτε τη Σύνταξη

  1. Αρχικά, πρέπει να ελέγξετε αν έχετε χρησιμοποιήσει τη σωστή σύνταξη για την έκδοση του PowerShell που χρησιμοποιείτε.
  2. Στη συνέχεια, βεβαιωθείτε ότι έχετε τοποθετήσει τα μπλοκ Try and Catch με τη σωστή σειρά.
  3. Η βασική σύνταξη για το Try-Catch αναφέρεται παρακάτω. Αντικαταστήστε τον # κωδικό για να εκτελεστεί εδώ με τον κωδικό και # κωδικός χειρισμού σφαλμάτων εδώ με τον κωδικό χειρισμού σφαλμάτων:

Δοκιμάστε {
# κωδικός για εκτέλεση εδώ
}
Σύλληψη {
# σφάλμα χειρισμού κώδικα εδώ
}

2. Ελέγξτε εάν παγιδεύετε ένα συγκεκριμένο σφάλμα 

Πρέπει να επαληθεύσετε εάν παγιδεύετε συγκεκριμένα σφάλματα που θέλετε να χειριστείτε και όχι όλα τα σφάλματα. Ακολουθήστε αυτά τα βήματα για να κάνετε το ίδιο:

  1. Πάτα το Windows κλειδί, τύπος PowerShell, και κάντε κλικ Εκτελέστε ως διαχειριστής.Γραφή
  2. Για να παγιδεύσετε ένα σφάλμα, πρέπει να χρησιμοποιήσετε το $ μεταβλητή στο μπλοκ Catch για πρόσβαση σε πληροφορίες σχετικά με το σφάλμα που παρουσιάστηκε. Ας δούμε το παράδειγμα του ίδιου για να καταλάβουμε καλύτερα: Δοκιμάστε {
    Get-ChildItem -Διαδρομή C:\DoesNotExist
    }
    Σύλληψη {
    εάν ($_.Εξαίρεση. GetType().Name -eq "DirectoryNotFoundException") {
    Εγγραφή-Έξοδος "Ο κατάλογος δεν βρέθηκε."
    }
    άλλο {
    ρίξει $_.Εξαίρεση|
    }
    }

3. Ορίστε την τιμή ErrorAction 

Η προεπιλεγμένη τιμή για το ErrorAction είναι Continue. Ωστόσο, για να λειτουργήσει το Try-Catch, πρέπει να ορίσετε την τιμή ErrorAction σε Stop. Για να το κάνετε αυτό, ακολουθήστε τα εξής βήματα:

  1. Ανοιξε PowerShell ως διαχειριστής.
  2. Πρέπει να χρησιμοποιήσετε το cmdlet Set-StrictMode ή την παράμετρο ErrorAction σε μεμονωμένα cmdlet. Για να το καταλάβουμε καλύτερα, ας δούμε ένα παράδειγμα:
Δοκιμάστε το Catch with ErrorAction Stop PowerShell

Δοκιμάστε {
Get-ChildItem -Διαδρομή C:\DoesNotExist -ErrorAction Stop
}
Σύλληψη {
Write-Output $_.Exception. Μήνυμα
}

Διαβάστε περισσότερα για αυτό το θέμα
  • Δείτε πώς μπορείτε να ανακτήσετε το κλειδί BitLocker από το OneDrive
  • Πώς να χρησιμοποιήσετε το Phone Link για iPhone στα Windows 11
  • DaVinci Resolve High CPU Usage: Πώς να τη μειώσετε

4. Χρησιμοποιήστε τον σωστό τύπο εξαίρεσης

Είναι σημαντικό να χρησιμοποιείτε σωστές εξαιρέσεις όταν χρησιμοποιείτε το Try-Catch, καθώς μπορεί να χειριστεί μόνο εξαιρέσεις του συστήματος. Τύπος εξαίρεσης. Εάν έχετε χρησιμοποιήσει non-System. Σφάλματα εξαίρεσης, τότε το Try-Catch δεν θα λειτουργήσει.

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

5. Αποφύγετε τον τερματισμό του σεναρίου 

Εάν το σενάριό σας τερματιστεί πριν φτάσετε στο μπλοκ Catch, το Try-Cach δεν θα έχει την ευκαιρία να χειριστεί το σφάλμα. Για να αποφύγετε τον τερματισμό του σεναρίου, ακολουθήστε τα εξής βήματα:

  1. Εκτόξευση PowerShell με δικαιώματα διαχειριστή.
  2. Πρέπει να χρησιμοποιήσετε το Να συνεχίσει δήλωση μετά την Σύλληψη ΟΙΚΟΔΟΜΙΚΟ ΤΕΤΡΑΓΩΝΟ. Ας το καταλάβουμε με ένα παράδειγμα:
δοκιμάστε να πιάσετε επιτέλους

Δοκιμάστε {
Get-ChildItem -Διαδρομή C:\DoesNotExist
}
Σύλληψη {
Write-Output $_.Exception. Μήνυμα
Να συνεχίσει
}

6. Χρησιμοποιήστε το Try-Catch-Finally

 Εάν η πρόταση Try-Catch εξακολουθεί να μην λειτουργεί, μπορείτε να χρησιμοποιήσετε την κατασκευή Try-Catch-Finally. Αυτό διασφαλίζει ότι ο κώδικάς σας θα εκτελείται μέχρι την ολοκλήρωση, ακόμη και αν υπάρχει εξαίρεση.

  1. Ανοιξε PowerShell ως διαχειριστής.
  2. Πληκτρολογήστε την εντολή με Δοκιμάστε-Πιάστε-Τέλος. Ακολουθεί ένα παράδειγμα για να κατανοήσετε καλύτερα το σενάριο:

Δοκιμάστε {
# Ο κωδικός σας εδώ

Catch [Σύστημα. Εξαίρεση] {
# Κωδικός χειρισμού εξαίρεσης εδώ

Τελικά {
 # Κωδικός καθαρισμού εδώ
}

Έτσι, αυτοί είναι τρόποι με τους οποίους μπορείτε να επιλύσετε το ζήτημα που δεν λειτουργεί το Try Catch στο PowerShell. Εάν έχετε οποιεσδήποτε ερωτήσεις σχετικά με το Try-Catch, αναφέρετέ τις στην παρακάτω ενότητα σχολίων. Θα χαρούμε να βοηθήσουμε!

Εάν θέλετε να μάθετε πώς να σταματήσετε το κλείσιμο του PowerShell μετά την εκτέλεση ενός σεναρίου, μπορείτε να το διαβάσετε αυτό.

Έχετε ακόμα προβλήματα; Διορθώστε τα με αυτό το εργαλείο:

ΕΥΓΕΝΙΚΗ ΧΟΡΗΓΙΑ

Εάν οι παραπάνω συμβουλές δεν έχουν λύσει το πρόβλημά σας, ο υπολογιστής σας ενδέχεται να αντιμετωπίσει βαθύτερα προβλήματα με τα Windows. Συνιστούμε λήψη αυτού του εργαλείου επισκευής υπολογιστή (αξιολογήθηκε Εξαιρετικά στο TrustPilot.com) για να τους αντιμετωπίσετε εύκολα. Μετά την εγκατάσταση, απλώς κάντε κλικ στο Εναρξη σάρωσης κουμπί και μετά πατήστε το Φτιάξ'τα όλα.

Πώς να ελέγξετε εάν υπάρχει φάκελος/κατάλογος με το PowerShell

Πώς να ελέγξετε εάν υπάρχει φάκελος/κατάλογος με το PowerShellPowershell

Χρησιμοποιήστε το cmdlet New-Item για να δημιουργήσετε έναν νέο κατάλογο στο PowerShellΤο PowerShell είναι ένα κέλυφος γραμμής εντολών και μια γλώσσα δέσμης ενεργειών που αναπτύχθηκε από τη Microso...

Διαβάστε περισσότερα
Πώς να απεγκαταστήσετε τις προεπιλεγμένες εφαρμογές των Windows 11 χρησιμοποιώντας το PowerShell

Πώς να απεγκαταστήσετε τις προεπιλεγμένες εφαρμογές των Windows 11 χρησιμοποιώντας το PowerShellPowershellWindows 11

Καταργήστε τις ανεπιθύμητες προεπιλεγμένες εφαρμογές χρησιμοποιώντας μια απλή εντολήΓια να απεγκαταστήσετε εφαρμογές συστήματος από τον υπολογιστή σας, πρέπει να εκτελέσετε την εφαρμογή Windows Pow...

Διαβάστε περισσότερα
Διόρθωση: Ο όρος δεν αναγνωρίζεται ως το όνομα ενός Cmdlet

Διόρθωση: Ο όρος δεν αναγνωρίζεται ως το όνομα ενός CmdletPowershell

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

Διαβάστε περισσότερα