2010-07-27 7 views
5

J'essaye d'exécuter SBT en utilisant le shell Fish. Ci-dessous le script Bash équivalent de ce que je suis en train de réaliser:Répertoire du script en cours d'exécution dans le shell Fish

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

Je vois dans la documentation de poissons qui [email protected] Bash peut être remplacé par dans le poisson. Mais je ne vois pas quoi remplacer dirname $0 avec.

Est-ce que quelqu'un connaît le script équivalent dans Fish?

+0

Je suggère de modifier la question pour mettre en évidence la conversion 0 $ à (-f d'état), qui est distinct de l'invocation java qui est spécifique à votre cas. Cela à part, sujet vraiment utile! – anddam

Répondre

1

Le fish équivalent à ceci:

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

est

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

Hey Dennis merci pour la réponse. J'ai cependant un problème étrange, $ _ est toujours une chaîne vide pour moi. Des idées? –

+0

$ _ ne fonctionnera pas dans un script avec poisson shebang, vérifiez la réponse de otherchirps à la place. – anddam

+0

@anddam: Cela fonctionne pour moi dans le poisson 1.23.1 –

5

$ _ semble ne fonctionner que directement via la ligne lecteur/commande, ou lorsque le script provient, pour moi.

Peut-être que cela fonctionnera pour vous:

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