Android

Bash εντολή προέλευσης

Bash Scripting : Source and Fork your Scripts

Bash Scripting : Source and Fork your Scripts

Πίνακας περιεχομένων:

Anonim

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

source είναι ένα κέλυφος ενσωματωμένο στο Bash και άλλα δημοφιλή κελύφη που χρησιμοποιούνται σε λειτουργικά συστήματα Linux και UNIX. Η συμπεριφορά του μπορεί να είναι ελαφρώς διαφορετική από το κέλυφος στο κέλυφος

Σύνταξη πηγής εντολών

Η σύνταξη για την εντολή source έχει ως εξής:

source FILENAME. FILENAME

  • source και . (μια περίοδος) είναι η ίδια εντολή.Αν το FILENAME δεν είναι πλήρης διαδρομή σε ένα αρχείο, η εντολή θα αναζητήσει το αρχείο στους καταλόγους που καθορίζονται στην περιβαλλοντική μεταβλητή $PATH . Αν το αρχείο δεν βρίσκεται στο $PATH η εντολή θα αναζητήσει το αρχείο στον τρέχοντα κατάλογο.Αν παραχωρηθούν ARGUMENTS , θα γίνουν παραμέτρους θέσης στο FILENAME . FILENAME υπάρχει το FILENAME , ο κώδικας εξόδου της εντολής source είναι 0 , διαφορετικά αν δεν βρεθεί το αρχείο, θα επιστρέψει 1 .

Παραδείγματα εντολών πηγής

Σε αυτή την ενότητα, θα εξετάσουμε ορισμένα βασικά παραδείγματα για τον τρόπο χρήσης της εντολής source .

Λειτουργίες προμήθειας

Σε αυτό το παράδειγμα, θα δημιουργήσουμε ένα αρχείο που περιλαμβάνει μια λειτουργία bash που ελέγχει εάν ο χρήστης που τρέχει το script είναι root και αν όχι, εμφανίζει ένα μήνυμα και βγαίνει από το script.

functions.sh

check_root () { if]; then echo "This script must be run as root" exit 1 fi }

Τώρα σε κάθε δέσμη ενεργειών που πρέπει να εκτελεστεί μόνο από τον χρήστη root, πηγαίνετε απλά το αρχείο functions.sh και καλέστε τη λειτουργία:

#!/usr/bin/env bash source functions.sh check_root echo "I am root"

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

Bash αρχείο διαμόρφωσης

Με την εντολή source , μπορείτε επίσης να διαβάσετε μεταβλητές από ένα αρχείο. Οι μεταβλητές πρέπει να οριστούν χρησιμοποιώντας τη σύνταξη Bash, VARIABLE=VALUE .

Ας δημιουργήσουμε ένα αρχείο διαμόρφωσης δοκιμής:

config.sh

VAR1="foo" VAR2="bar"

Στη δέσμη ενεργειών bash χρησιμοποιήστε την εντολή source για να διαβάσετε το αρχείο διαμόρφωσης:

#!/usr/bin/env bash source config.sh echo "VAR1 is $VAR1" echo "VAR2 is $VAR2"

VAR1 is foo VAR2 is bar

συμπέρασμα

Σε αυτόν τον οδηγό, έχετε μάθει πώς να χρησιμοποιήσετε την εντολή sourcein builtin στις δέσμες ενεργειών του κελύφους σας.

bash terminal