Wenn Sie ein Skript aufrufen, das `#! / Usr / bin / env bash` enthält, wird stattdessen bashdb geöffnet
Ich habe das seit Jahren selten und unvorhersehbar gesehen. Heute passierte es auf einem Mac und versuchte, mein Skript auszuführen, das nach MacPorts-Updates sucht, die als Cronjob hätten laufen sollen, aber vermisst zu sein schienen.
bashdb
Stattdessen wird das Skript an der Bash-Eingabeaufforderung ausgeführt . Das explizite Aufrufen von bash zum Ausführen des Skripts funktioniert wie erwartet. Wenn Sie (mindestens einige) andere Skripts an der Bash-Eingabeaufforderung ausführen, werden die Skripts erwartungsgemäß ausgeführt. Running /usr/bin/env bash
öffnet eine neue Instanz von bash.
- macOS High Sierra 10.13.1 (17B48)
- MacPorts 2.4.2
- MacPorts bash @ 4.4.12_0
- MacPorts bashdb @ 4.4-0.94_0
Ich habe seit Jahrzehnten auf meiner Bash Konfiguration Hacking, also gibt es viel zu viel hier in dump, aber bashdb
nicht in meinem Bash Startskripts erwähnt ~/bin
, alias
oder set
/ env
/ printenv
.
Was hätte ich getan, um dies mit Absicht zu erreichen? Und wie mache ich es rückgängig?
0 Antworten auf die Frage
Verwandte Probleme
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?
-
8
Benennen Sie eine Gruppe von Dateien mit einem Befehl um
-
2
Warum aktualisiert sich mein Pfad nicht * jetzt *?
-
5
Wie entferne ich einen symbolischen Link zu einem Verzeichnis?
-
8
Rette mich vor dem Kauderwelsch
-
9
Wie kann ich jeder Zeile einer Textdatei eine Zeilennummer und einen Tabulator voranstellen?
-
1
Wann sollte ich Konfigurationen in .bashrc vs einfügen? .bash_profile?
-
1
Umleitung: Wie kam das zusätzliche Wort in die Datei?