2010-07-27 8 views
5

Ich versuche SBT mit der Fisch-Shell laufen zu lassen. Unten ist der äquivalent Bash-Skript von dem, was ich zu erreichen bin versucht:Verzeichnis des laufenden Skripts in Fisch Shell

java -Xmx512M -jar `dirname $0`/sbt-launch.jar "[email protected]" 

ich in der Fisch-Dokumentation, dass [email protected] in Bash mit in Fisch ersetzt werden kann. Aber ich kann nicht sehen, was dirname $0 mit ersetzen soll.

Kennt jemand das entsprechende Skript in Fish?

+0

Ich schlage vor, die Frage zu bearbeiten, um die $ 0 Umwandlung in (Status -f) zu markieren, dass getrennt ist, dass aus dem Java-Aufruf, die Ihren Fall spezifisch ist. Das ist ein wirklich nützliches Thema! – anddam

Antwort

1

Das fish entspricht dies:

java -Xmx512M -jar $(dirname $0)/sbt-launch.jar "[email protected]"  # Bash, et al 

ist

java -Xmx512M -jar (dirname $_)/sbt-launch.jar "$argv"  # fish 
+0

Hey Dennis danke für die Antwort. Ich habe allerdings ein seltsames Problem, $ _ ist immer eine leere Zeichenfolge für mich. Irgendwelche Ideen? –

+0

$ _ funktioniert nicht in einem Skript mit Fisch-Shebang, überprüfe stattdessen die Antwort von churchchirps. – anddam

+0

@anddam: Es funktioniert für mich in Fisch 1.23.1 –

5

$ _ scheint nur direkt über den Leser/Befehlszeile zu arbeiten, oder wenn das Skript bezogen ist, für mich.

Vielleicht wird dies für Sie arbeitet:

java -Xmx512M -jar (dirname (status -f))/sbt-launch.jar "$argv"  # fish