Πώς να εκτελέσετε εντολές Linux από έξω από το Bash Shell στα Windows 10
Τα Windows 10 περιλαμβάνουν ένα υποκείμενο "Υποσύστημα Windows για Linux" για να εκτελούν εφαρμογές Linux, αλλά είναι προσβάσιμες μόνο μέσω του κελύφους Bash. Ωστόσο, υπάρχει ένας τρόπος για να τρέξετε εφαρμογές Linux χωρίς να ξεκινήσετε πρώτα ένα παράθυρο Bash.
Αυτό είναι δυνατό χάρη στο bash -c
εντολή. Χρησιμοποιήστε το για να εκτελέσετε εντολές Linux μέσω Command Prompt και PowerShell ή ακόμα και να δημιουργήσετε μια συντόμευση στην επιφάνεια εργασίας που εκτελεί μια εντολή ή ένα πρόγραμμα Linux όταν ξεκινά.
Εκσυγχρονίζω: Εάν έχετε εγκαταστήσει πολλά περιβάλλοντα Linux, μπορείτε να χρησιμοποιήσετε την εντολή wslconfig για να επιλέξετε το προεπιλεγμένο περιβάλλον Linux. Υπάρχει επίσης ένας τρόπος για την εκτέλεση εντολών σε συγκεκριμένα περιβάλλοντα Linux.
Πώς να εκτελέσετε τις εντολές του Linux στη γραμμή εντολών ή στο PowerShell
Πριν να κάνετε κάτι από αυτό, θα πρέπει να εγκαταστήσετε και να ρυθμίσετε το κέλυφος Bash των Windows 10. Αφού το κάνετε, μπορείτε να ανοίξετε ένα παράθυρο γραμμής εντολών και να εκτελέσετε την ακόλουθη εντολή για να εκτελέσετε λογισμικό Linux έξω από ένα παράθυρο Bash:
bash -c "εντολή"
Για παράδειγμα, ας υποθέσουμε ότι θέλετε να εγκαταστήσετε το πακέτο emacs μέσω του apt-get. Θα εκτελέσετε την ακόλουθη εντολή σε ένα παράθυρο γραμμής εντολών:
bash -c "sudo apt-get εγκαταστήσετε emacs"
Όταν χρησιμοποιείτε bash -c, τα Windows θα εκκινήσουν ένα κέλυφος Bash στο παρασκήνιο και θα περάσουν την εντολή σε αυτό. Η εντολή θα τρέξει μέχρι να ολοκληρωθεί και μετά να τερματιστεί, μαζί με το κέλυφος Bash. Οποιαδήποτε έξοδος τερματικού τρέχει τρέχουσα εντολή θα εμφανιστεί απευθείας στο παράθυρο της γραμμής εντολών, αντί για ένα ξεχωριστό παράθυρο Bash shell.
Αυτό το τέχνασμα σας επιτρέπει επίσης να εκτελέσετε εντολές Linux στο PowerShell, ακριβώς όπως θα έπρεπε να εκτελέσετε ένα κανονικό εκτελέσιμο Windows. Μπορείτε να το κάνετε αυτό εκτελώντας απευθείας το αρχείο .exe όπως θα κάνατε σε ένα παράθυρο γραμμής εντολών ή μέσω οποιασδήποτε άλλης μεθόδου εκτέλεσης εκτελέσιμων αρχείων στο PowerShell.
bash -c "uname -a"
Όπως με ένα παράθυρο γραμμής εντολών, η έξοδος της εντολής θα εμφανιστεί απευθείας στο PowerShell. Αυτές οι μέθοδοι μπορούν να χρησιμοποιηθούν για την προσθήκη εντολών Linux σε ένα αρχείο δέσμης ή σε δέσμη ενεργειών PowerShell.
Τρόπος εκτέλεσης εντολών Linux Από το παράθυρο διαλόγου "Εκτέλεση" ή "Έναρξη"
Αυτό το τέχνασμα λειτουργεί επίσης για την εκτέλεση εντολών από το παράθυρο διαλόγου Εκτέλεση (Run), από το μενού Έναρξη (Start) ή από οποιονδήποτε εκκινητή εφαρμογών τρίτου κατασκευαστή.
Για παράδειγμα, για να ξεκινήσετε το vi από το παράθυρο διαλόγου Εκτέλεση, πιέστε τα Windows + R στο πληκτρολόγιό σας και στη συνέχεια εκτελέστε την ακόλουθη εντολή:
bach -c "vi"
Ο επεξεργαστής κειμένου vi θα εμφανιστεί στο δικό του παράθυρο.
Αυτό λειτουργεί επίσης για το μενού "Έναρξη", ώστε να μπορείτε να πληκτρολογήσετε την ίδια εντολή απευθείας στο μενού Έναρξη και να πατήσετε το πλήκτρο Enter για να το εκτελέσετε ως εντολή.
Πώς να εκτελέσετε εντολές Linux με μια συντόμευση επιφάνειας εργασίας
ο bash -c
Η εντολή αυτή καθιστά επίσης δυνατή την εκκίνηση εφαρμογών Linux μέσω συντόμευσης στην επιφάνεια εργασίας. Για παράδειγμα, ας υποθέσουμε ότι θέλατε να ξεκινήσετε τον επεξεργαστή κειμένου vi μέσω μιας συντόμευσης επιφάνειας εργασίας. Κάνατε δεξί κλικ στην επιφάνεια εργασίας, τοποθετήστε το δείκτη του ποντικιού στην εντολή Νέα> Νέα συντόμευση και πληκτρολογήστε τον ακόλουθο στόχο:
bash -c "vi"
Τώρα μπορείτε να αποθηκεύσετε τη συντόμευση και θα ξεκινήσει vi όταν κάνετε διπλό κλικ.
Είναι ενδιαφέρον ότι το συγκεκριμένο τέχνασμα λειτουργεί επίσης για την εκκίνηση γραφικών εφαρμογών Linux από μια συντόμευση στην επιφάνεια εργασίας. Εγκαταστήστε ένα διακομιστή X και ρυθμίστε γραφικές εφαρμογές desktop Linux. Θα πρέπει να είστε σε θέση να δημιουργήσετε συντομεύσεις για να τις ξεκινήσετε άμεσα.
Ωστόσο, θα πρέπει να τα ξεκινήσετε έτσι:
bash -c "DISPLAY =: 0 εντολή"
Ενώ μπορείτε να εκκινήσετε τις εντολές Bash από αλλού στα Windows, δεν υπάρχει τρόπος να εκτελέσετε λογισμικό ή εκτελέσιμα Windows απευθείας από ένα παράθυρο κελύφους Bash.