Wie kehren Sie zu einem Bash-Skript zurück?
Verwende ich ein Skript, das erstreckt sich über die bash-Quellcode-Funktion;
#!/bin/bash
source someneatscriptthatendsprematurely.sh
Ich würde gerne in der Lage, die Rückkehr aus dem Skript, ohne dabei das Haupt-Skript.
Mittels exit bricht das script, return nur in Funktionen und Experimentieren mit $(Ausfahrt 1) scheint nicht zu funktionieren.
So, ist es möglich, zurück in ein sub-bash-Skript, ohne die Haupt-bash?
Jede Hilfe dankbar!
InformationsquelleAutor der Frage codar | 2010-09-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie die
return
Aussage:Können Sie dies in Aktion zu sehen mit den beiden folgenden scripts:
Beim ausführen
script1.sh
Sie sehen:InformationsquelleAutor der Antwort paxdiablo
Ist es wichtig, dass Sie können ändern von Umgebungsvariablen? Denn sonst können Sie nur das Skript ausführen, indem man ihn ohne Quelle:
InformationsquelleAutor der Antwort Bart Sas
Ich hatte das gleiche problem nur jetzt
Erkannte ich, dass das hinzufügen einer checker-Funktion und Rückkehr, die nicht auch zurück, dass die Funktion an den Aufrufer zum Beispiel.
Auf bash_functions
Was hier passiert ist, da die Steine ist der einzige Ort, den die zurückgegebenen so install_packer_linux weiterhin
So können Sie zwei Dinge tun hier. Entweder halten Sie das aktuelle format (Funktion ruft eine andere Funktion), wie Sie ist und bewerten, mit truthy Wert dann zurück, wenn die Werte nicht truthy, oder schreiben Sie den Stein auf das Haupt installer_packer_linux Funktion
Truthy:
Bemerken wir Hinzugefügt || Rückgabe nach den Kontrollen und verkettet die Prüfungen mit &&
also, wenn nicht beide Prüfungen sind truthy wir wieder die Funktion
InformationsquelleAutor der Antwort Kenichi Shibata