Ich möchte ein einfaches Bash-Skript erstellen, um ein Java-Programm unter OS X zu starten. Die Namen der Datei, der Dateipfad und der unmittelbare Arbeitsordner enthalten alle Leerzeichen. Wenn ich das tue:
%Vor%Ich bekomme
%Vor%Ich habe auch versucht, Zitate an allen möglichen Stellen zu setzen. Das aufwendigste Beispiel ist
%Vor%Nichts hat funktioniert. Ich bekomme entweder Fehlermeldungen oder diese kryptische Nachricht "usage: dirname path".
Was sind andere Methoden, die funktionieren könnten?
Bearbeiten: Das scheint für niemanden außer mir ein Problem zu sein, also muss es nur meine Box sein. Ich werde meinen eigenen Beitrag unten akzeptieren, weil es die einzige Lösung ist, die für dieses spezielle Problem funktioniert hat. Aber ich bin auf jeden Fall optimistisch für die Lösungen, die für alle anderen funktionieren und die Hilfe von allen wirklich zu schätzen wissen.
Das Entfernen der inneren Anführungszeichen ist unnötig:
%Vor%Aber das führt nicht zur Wurzel des Problems, nämlich dass der Wert von $ 0 irgendwie leer oder vielleicht etwas seltsam erscheint. Versuchen Sie, das Skript wie folgt auszuführen:
%Vor%Dies wird jede Zeile mit interpolierten Variablen vor dem Ausführen widerhallen. Es ist sehr nützlich für das Debuggen. Auch sehr hilfreich sind:
%Vor%Hey, ich bin mir nicht sicher ... Aber ist es möglich, dass dein
? %Vor%deutet auf etwas, das nicht bash ist? Was ich normalerweise benutze ist:
%Vor%Ganz neu für die ganze Scripting-Sache, also nicht sicher.