Εάν αντιμετωπίζετε σφάλματα εφαρμογής ή εντολής "δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή" όταν προσπαθείτε να κάνετε κάτι στη γραμμή εντολών, να ενημερώσετε μια εφαρμογή ή να εγκαταστήσετε κάτι νέο, δεν είστε μόνοι. Συμβαίνει όταν αλλάζουν οι περιβαλλοντικές μεταβλητές των Windows που εμποδίζουν την εκτέλεση της εντολής.
Θα μπορούσατε κυριολεκτικά να προσπαθείτε να κάνετε οτιδήποτε, ακόμη και να εκτελέσετε μια βασική εντολή CMD ή να ενημερώσετε το antivirus σας. Εάν η μεταβλητή έχει αλλάξει, τα Windows δεν θα μπορούν να εκτελέσουν αυτήν την εντολή. Εάν αυτό συμβαίνει σε εσάς, υπάρχουν μερικοί τρόποι να το χειριστείτε.
Υπάρχουν δύο εκδόσεις αυτού του σφάλματος. Ένα για γενικά προγράμματα και ένα για εάν προσπαθείτε να χρησιμοποιήσετε μια εντολή CMD. Θα σας δείξω πώς να διορθώσετε και τα δύο.
Διορθώστε τα σφάλματα «η εντολή δεν αναγνωρίζεται».
Η σύνταξη του σφάλματος θα είναι συνήθως κάτι σαν "Το πρόγραμμα.exe δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή". Η σύνταξη εξαρτάται από το τι κάνετε εκείνη τη στιγμή, κάτι που είναι σημαντικό καθώς πρέπει να ελέγξουμε το αρχείο εγκατάστασης πριν κάνουμε οτιδήποτε άλλο.
- Μεταβείτε στο αρχείο εγκατάστασης του προγράμματος που προσπαθείτε να χρησιμοποιήσετε και βεβαιωθείτε ότι υπάρχει το εκτελέσιμο αρχείο.
- Μεταβείτε στις ρυθμίσεις Πίνακας Ελέγχου, Σύστημα και Ασφάλεια και Προηγμένες ρυθμίσεις συστήματος.
- Επιλέξτε το κουμπί Environmental Variables.
- Επιλέξτε Διαδρομή στο παράθυρο Μεταβλητές συστήματος στο κάτω μέρος του νέου παραθύρου.
- Επιλέξτε Επεξεργασία και θα εμφανιστεί ένα νέο παράθυρο.
- Βεβαιωθείτε ότι υπάρχουν τα «%SystemRoot%System32» και «C:WindowsSystem32».
- Αντιγράψτε μία τιμή στο Σημειωματάριο.
- Αλλάξτε την καταχώρηση στο παράθυρο Environmental Variable σε κάτι άλλο και κάντε κλικ στο OK.
- Αντικαταστήστε την τιμή που μόλις αλλάξατε με την αρχική από το Σημειωματάριο και κάντε κλικ στο OK.
- Κάντε το ίδιο για την άλλη τιμή.
Εάν γνωρίζετε τα Windows, θα ξέρετε ότι μερικές φορές το μόνο που χρειάζεται να κάνετε είναι να εισαγάγετε ξανά μια τιμή για να ληφθεί ξανά. Υποθέτω ότι είναι για να το συνδέσω ξανά στην εσωτερική βάση δεδομένων των Windows, αλλά ποιος ξέρει.
Η επικόλληση των τιμών στο Σημειωματάριο εξοικονομεί χρόνο και διατηρεί τη σωστή σύνταξη σε περίπτωση που ενοχληθείτε κατά την εκτέλεση αυτής της εργασίας ή σε περίπτωση που ξεχάσετε πώς ήταν. Απλώς κόψτε και επικολλήστε το καθένα ξεχωριστά και αλλάξτε την τιμή στις μεταβλητές Περιβάλλοντος σε οτιδήποτε. Στη συνέχεια, επικολλήστε την αρχική τιμή και επιβεβαιώστε. Αυτό θα πρέπει να είναι αρκετό για την αρχική εντολή που προσπαθείτε να δουλέψετε ξανά.
Ο αετός με το μάτι ανάμεσά σας μπορεί να παρατηρήσει ότι το "%SystemRoot%System32" και το "C:WindowsSystem32" δείχνουν στην ίδια θέση. Αυτή είναι μια καταχώρηση παλαιού τύπου για όσους χρησιμοποιούν παλαιότερα συστήματα. Αναμφισβήτητα δεν χρειάζεστε και τα δύο, αλλά τα Windows φαίνεται να τα αναφέρουν ξεχωριστά. Το Systemroot ήταν κυρίως για συστήματα που χρησιμοποιούσαν φακέλους WINNT και Windows, κάτι που δεν ισχύει πλέον. Ωστόσο, και τα δύο πρέπει να υπάρχουν ακόμα και στα Windows 10.
Διορθώστε τα σφάλματα «Η εντολή CMD δεν αναγνωρίζεται».
Εάν προσπαθείτε να εκτελέσετε μια εντολή CMD και βλέπετε ότι το CMD δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή, αυτό θα μπορούσε να είναι κάτι διαφορετικό. Η δοκιμή της παραπάνω επιδιόρθωσης μπορεί να έχει αποτέλεσμα, αλλά το πρόβλημα μπορεί να προκαλείται από μερικές καταχωρίσεις μητρώου που διακόπτουν την κανονική αλυσίδα εντολών.
Κατά κάποιο τρόπο, εάν έχετε ορίσει το AutoRun στο μητρώο, ορισμένες εντολές CMD όπως το ping ή το nslookup δεν θα λειτουργούν πάντα. Επιστρέφουν το παραπάνω σφάλμα. Το .exe είναι παρόν και όλα μπορεί να φαίνονται σωστά, αλλά αυτές οι δύο μικρές καταχωρήσεις καταστρέφουν τη μέρα σας.
Αυτές οι εγγραφές μητρώου είναι:
HKEY_LOCAL_MACHINEΛογισμικόMicrosoftCommand ProcessorAutoRun
HKEY_CURRENT_USERΛογισμικόMicrosoftCommand ProcessorAutoRun
Αυτό το θέμα μετρά τουλάχιστον μια δεκαετία. Έχω έναν σελιδοδείκτη για μια καταχώριση ιστολογίου MSDN από το 2007 που έχω αποθηκεύσει για να απεικονίσει ακριβώς αυτό το πράγμα.
- Μεταβείτε στο C:WindowsSystem32 και βεβαιωθείτε ότι υπάρχει το εκτελέσιμο αρχείο CMD.
- Εκτελέστε τον έλεγχο Περιβαλλοντικές μεταβλητές όπως παραπάνω. Αν αυτό δεν διορθωθεί, προχωρήστε.
- Εκτελέστε την εντολή «cmd /d» η οποία προφανώς σταματά την εκτέλεση του autorun. Εάν το μήνυμα είναι το ίδιο, προχωρήστε.
- Βρείτε αυτές τις δύο καταχωρίσεις μητρώου που αναφέρονται παραπάνω και διαγράψτε τις.
Αυτή η επιδιόρθωση είναι παλιά αλλά χρυσή. Το χρησιμοποιούσα όταν δούλευα IT Admin σε μια γνωστή εταιρεία καλωδίων. Γι' αυτό το έχω ακόμα ως σελιδοδείκτη. Το σφάλμα "η εντολή δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή" υπάρχει τόσο καιρό και από όσο γνωρίζω, η επιδιόρθωση εξακολουθεί να είναι η ίδια ακόμη και πέντε γενιές Windows αργότερα. Ωστόσο, εάν συναντήσετε το σφάλμα, τουλάχιστον ξέρετε τώρα τι να κάνετε.
Πότε ήταν η τελευταία φορά που είδατε το σφάλμα «δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή» στα Windows; Χρησιμοποιήσατε μία από αυτές τις λύσεις ή κάτι άλλο;