Πώς να δημιουργήσετε και να εκτελέσετε σενάρια Bash Shell στα Windows 10

Με την άφιξη του κελύφους Bash των Windows 10, μπορείτε πλέον να δημιουργήσετε και να εκτελέσετε δέσμες ενεργειών κελύφους Bash στα Windows 10. Μπορείτε επίσης να ενσωματώσετε εντολές Bash σε αρχείο δέσμης Windows ή σενάριο PowerShell.

Ακόμα κι αν γνωρίζετε τι κάνετε, αυτό δεν είναι απαραίτητα τόσο απλό όσο φαίνεται. Τα Windows και το UNIX χρησιμοποιούν διαφορετικούς χαρακτήρες στο τέλος της γραμμής και το σύστημα αρχείων των Windows είναι προσβάσιμο σε διαφορετική τοποθεσία στο περιβάλλον Bash.

Πώς να γράψετε ένα σενάριο Bash στα Windows 10

ΣΧΕΤΙΚΟΙ: Πώς να εγκαταστήσετε και να χρησιμοποιήσετε το Linux Bash Shell στα Windows 10

Όταν γράφετε σενάρια κελύφους σε Windows, λάβετε υπόψη ότι τα συστήματα που μοιάζουν με Windows και UNIX όπως το Linux χρησιμοποιούν διαφορετικούς χαρακτήρες "end of line" σε αρχεία κειμένου σε κελύφη.

Με άλλα λόγια, αυτό σημαίνει ότι δεν μπορείτε απλά να γράψετε ένα σενάριο κελύφους στο Σημειωματάριο. Αποθηκεύστε το αρχείο στο Σημειωματάριο και δεν θα ερμηνευτεί σωστά από τον Bash. Ωστόσο, μπορείτε να χρησιμοποιήσετε πιο προηγμένους επεξεργαστές κειμένου – για παράδειγμα, το Σημειωματάριο ++ σάς επιτρέπει να δώσετε ένα αρχείο χαρακτήρων στο τέλος της γραμμής UNIX κάνοντας κλικ στην Επεξεργασία> Μετατροπή EOL> Μορφή UNIX / OSX.

Ωστόσο, καλύτερα να γράψετε το κέλυφος του κελύφους στο ίδιο το περιβάλλον του Bash. Το περιβάλλον Bash που βασίζεται στο Ubuntu διαθέτει επεξεργαστές κειμένου vi και nano. Ο επεξεργαστής vi είναι πιο ισχυρός, αλλά αν δεν το έχετε χρησιμοποιήσει ποτέ πριν, ίσως θελήσετε να ξεκινήσετε με το nano. Είναι πιο εύκολο στη χρήση αν είστε καινούργιος.

Για παράδειγμα, για να δημιουργήσετε ένα σενάριο bash στο nano, θα εκτελέσετε την ακόλουθη εντολή στο bash:

nano ~ / myscript.sh

Αυτό θα ανοίξει το πρόγραμμα επεξεργασίας κειμένου Nano που επισήμανε ένα αρχείο με το όνομα "myscript.sh" στον αρχικό κατάλογο του λογαριασμού χρήστη σας. (Ο χαρακτήρας "~" αντιπροσωπεύει τον αρχικό σας κατάλογο, οπότε η πλήρης διαδρομή είναι /home/username/myscript.sh.)

Ξεκινήστε το σενάριο του κελύφους σας με τη γραμμή:

#! / bin / bash

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Ο οδηγός για αρχάριους για το Shell Scripting: The Basics

Εισαγάγετε τις εντολές που θέλετε να εκτελέσετε, καθεμία στη δική της γραμμή. Το σενάριο θα εκτελεί κάθε εντολή με τη σειρά. Προσθέστε έναν χαρακτήρα "#" πριν από μια γραμμή για να τον αντιμετωπίσετε ως "σχόλιο", κάτι που βοηθά εσάς και άλλους ανθρώπους να κατανοήσουν το σενάριο αλλά που δεν εκτελείται ως εντολή. Για πιο προηγμένα κόλπα, συμβουλευτείτε έναν πιο λεπτομερή οδηγό για τα σενάρια Bash στο Linux. Οι ίδιες τεχνικές θα λειτουργήσουν στο Bash στο Ubuntu σε Windows.

Λάβετε υπόψη ότι δεν υπάρχει τρόπος εκτέλεσης προγραμμάτων Windows από το περιβάλλον Bash. Είστε περιορισμένοι στις εντολές και τα βοηθητικά προγράμματα του τερματικού Linux, όπως θα κάνατε σε ένα τυπικό σύστημα Linux.

Για παράδειγμα, ας χρησιμοποιήσουμε απλώς ένα βασικό σενάριο «hello world» ως παράδειγμα:

#! / bin / bash # ορίστε τη μεταβλητή STRING STRING = "Γεια σας Κόσμος!" # εκτυπώστε τα περιεχόμενα της μεταβλητής στην οθόνη αντηχεί $ STRING

Εάν χρησιμοποιείτε το πρόγραμμα επεξεργασίας κειμένου Nano, μπορείτε να αποθηκεύσετε το αρχείο πατώντας Ctrl + O και στη συνέχεια Enter. Κλείστε τον επεξεργαστή πατώντας Ctrl + X.

Κάντε το σενάριο εκτελέσιμο και, στη συνέχεια, εκτελέστε το

Ίσως θέλετε το σενάριο να εκτελεστεί, ώστε να μπορείτε να το εκτελέσετε πιο εύκολα. Στο Linux, αυτό σημαίνει ότι πρέπει να δώσετε στο αρχείο σεναρίου την εκτελέσιμη άδεια. Για να το κάνετε αυτό, εκτελέστε την ακόλουθη εντολή στο τερματικό, δείχνοντάς την στο σενάριό σας:

chmod + x ~ / myscript.sh

Για να εκτελέσετε το σενάριο, μπορείτε τώρα να το εκτελέσετε στο τερματικό πληκτρολογώντας τη διαδρομή του. Όποτε θέλετε να ξεκινήσετε το σενάριο στο μέλλον, απλώς ανοίξτε το κέλυφος Bash και πληκτρολογήστε τη διαδρομή προς το σενάριο.

~ / myscript.sh

(Εάν το σενάριο βρίσκεται στον τρέχοντα κατάλογο, μπορείτε να το εκτελέσετε με ./myscript.sh)

Πώς να εργαστείτε με αρχεία Windows σε ένα σενάριο Bash

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Πώς να αποκτήσετε πρόσβαση στα αρχεία Bash του Ubuntu στα Windows (και στη μονάδα δίσκου συστήματος των Windows στο Bash)

Για να αποκτήσετε πρόσβαση σε αρχεία Windows στο σενάριο, θα πρέπει να καθορίσετε τη διαδρομή τους κάτω από το / mnt / c, όχι τη διαδρομή των Windows. Για παράδειγμα, εάν θέλετε να καθορίσετε το αρχείο C: \ Users \ Bob \ Downloads \ test.txt, θα πρέπει να καθορίσετε τη διαδρομή /mnt/c/Users/Bob/Downloads/test.txt. Συμβουλευτείτε τον οδηγό μας για να τοποθετήσετε αρχεία στο κέλυφος Bash των Windows 10 για περισσότερες λεπτομέρειες.

Πώς να ενσωματώσετε εντολές Bash σε δέσμη ενεργειών Batch ή PowerShell

ΣΧΕΤΙΚΟ: Πώς να ρυθμίσετε την προεπιλεγμένη διανομή Linux στα Windows 10

Τέλος, εάν έχετε ένα υπάρχον αρχείο δέσμης ή σενάριο PowerShell στο οποίο θέλετε να ενσωματώσετε εντολές, μπορείτε να εκτελέσετε εντολές Bash απευθείας χρησιμοποιώντας την bash -cεντολή.

Για παράδειγμα, για να εκτελέσετε μια εντολή Linux σε ένα παράθυρο γραμμής εντολών ή PowerShell, μπορείτε να εκτελέσετε την ακόλουθη εντολή:

bash -c "εντολή"

Αυτό το τέχνασμα σας επιτρέπει να προσθέσετε εντολές Bash σε αρχεία δέσμης ή σενάρια PowerShell. Το παράθυρο κελύφους Bash θα εμφανιστεί όταν εκτελείται μια εντολή Bash.

Ενημέρωση : Εάν έχετε εγκαταστήσει πολλά περιβάλλοντα Linux, μπορείτε να χρησιμοποιήσετε την εντολή wslconfig για να επιλέξετε το προεπιλεγμένο περιβάλλον Linux που χρησιμοποιείται κατά την εκτέλεση της bash -cεντολής.

Για να δημιουργήσετε μια συντόμευση σε ένα σενάριο Bash από τα Windows, απλώς δημιουργήστε μια συντόμευση όπως συνήθως. Για τον στόχο της συντόμευσης, χρησιμοποιήστε την bash -cεντολή που σκιαγραφήσαμε παραπάνω και δείξτε την στο σενάριο Bash που δημιουργήσατε.

Για παράδειγμα, θα δείγατε μια συντόμευση στο " bash -c "~/myscript.sh"" για να εκτελέσετε το παραπάνω σενάριο παραδείγματος. Μπορείτε επίσης να εκτελέσετε αυτήν την εντολή από ένα παράθυρο γραμμής εντολών ή PowerShell.