Ein Skript erstellen und ausführen
Teil des Abschnitts Grundlagen der Terminal-Journey von Coddy — Lektion 67 von 82.
Nachdem Sie nun verstehen, was ein Shell-Skript ist, lassen Sie uns eines erstellen und ausführen. Der Prozess umfasst drei Schritte: das Erstellen der Datei, das Erstellen der Ausführbarkeit und das Ausführen.
Erstellen Sie zuerst eine neue Datei mit einer .sh-Dateiendung. Sie können echo mit Umleitung verwenden, um das Shebang und die Befehle zu schreiben:
echo '#!/bin/bash' > greet.sh
echo 'echo "Hello, World!"' >> greet.shBevor Sie das Skript ausführen können, müssen Sie ihm die Ausführungsberechtigung erteilen. Standardmäßig haben neue Dateien diese Berechtigung nicht. Verwenden Sie chmod, um sie hinzuzufügen:
chmod +x greet.shJetzt können Sie das Skript ausführen, indem Sie seinen Pfad angeben. Verwenden Sie für ein Skript in Ihrem aktuellen Verzeichnis ./ vor dem Dateinamen:
./greet.shDies gibt Hello, World! aus. Das ./ weist die Shell an, im aktuellen Verzeichnis zu suchen, anstatt den PATH zu durchsuchen. Ohne dies wird die Shell Ihr Skript nicht finden.
Sie können ein Skript auch ohne Ausführungsberechtigung ausführen, indem Sie den Interpreter direkt aufrufen:
bash greet.shDies weist Bash explizit an, die Datei zu interpretieren, wodurch die Notwendigkeit einer Ausführungsberechtigung umgangen wird.
Aufgabe
EinfachErstellen Sie ein Shell-Skript namens welcome.sh, das beim Ausführen Welcome to scripting! ausgibt.
Folgen Sie diesen Schritten:
- Erstellen Sie die Skriptdatei mit der Shebang-Zeile (
#!/bin/bash) - Fügen Sie einen
echo-Befehl hinzu, der die Willkommensnachricht ausgibt - Machen Sie das Skript mit
chmodausführbar - Führen Sie das Skript mit
./aus
Ihre Ausgabe sollte wie folgt aussehen:
Welcome to scripting!Hinweis: Verwenden Sie
echo '#!/bin/bash' > welcome.sh, um die Datei mit der Shebang-Zeile zu erstellen, und dannecho 'echo "Welcome to scripting!"' >> welcome.sh, um den Befehl hinzuzufügen. Machen Sie es mitchmod +x welcome.shausführbar und führen Sie es dann mit./welcome.shaus.
Spickzettel
Um ein Shell-Skript zu erstellen und auszuführen, folgen Sie diesen drei Schritten:
1. Erstellen Sie die Skriptdatei
Erstellen Sie eine Datei mit der Endung .sh und fügen Sie die Shebang-Zeile und die Befehle hinzu:
echo '#!/bin/bash' > script.sh
echo 'echo "Hello, World!"' >> script.sh2. Machen Sie es ausführbar
Verwenden Sie chmod +x, um die Ausführungsberechtigung hinzuzufügen:
chmod +x script.sh3. Führen Sie das Skript aus
Führen Sie das Skript mit ./ aus, um das aktuelle Verzeichnis anzugeben:
./script.shAlternativ können Sie ein Skript ohne Ausführungsberechtigung ausführen, indem Sie den Interpreter direkt aufrufen:
bash script.shProbier es selbst
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Verzeichnisse
Ein Verzeichnis erstellenEin Verzeichnis kopierenEin Verzeichnis verschieben und umbenennenEin Verzeichnis löschenZusammenfassung - Verzeichnisoperationen7Dateiinhalt
Head und TailWortanzahlSort-BefehlUniq-BefehlGrep GrundlagenGrep mit FlagsZusammenfassung - Textdetektiv10Log-Analyzer-Projekt
ProjektübersichtAnzeigen der Logdatei13Grundlagen der Shell-Skripte
Was ist ein Shell-SkriptEin Skript erstellen und ausführenVariablen in SkriptenBenutzereingabe in SkriptenIf-AnweisungFor-SchleifeWhile-SchleifeZusammenfassung - Zahlenraten2Navigation
Arbeitsverzeichnis anzeigenDateien auflistenVerzeichnis wechselnAbsolute vs. relative PfadeHome- und Root-VerzeichnisZusammenfassung - Den Weg finden8Umleitung
StandardausgabeIn eine Datei überschreibenAn eine Datei anhängenStandardeingabeStandardfehlerausgabeZusammenfassung – Log-Builder3Dateien
Eine Datei erstellenEine Datei lesenEine Datei kopierenEine Datei verschieben und umbenennenEine Datei löschenZusammenfassung - Dateioperationen6Wildcards und Muster
Die Sternchen-WildcardDie Fragezeichen-WildcardKlammer-WildcardsWildcards kombinierenZusammenfassung - Selektive Operationen9Pipes
Was ist eine PipeVerkettung zweier BefehleVerkettung mehrerer BefehlePipe mit GrepZusammenfassung - Daten-Pipeline