2010-07-27 5 views
5

Tôi đang cố gắng để SBT chạy bằng vỏ Cá. Dưới đây là kịch bản Bash tương đương với những gì tôi đang cố gắng để đạt được:Danh mục tập lệnh chạy trong vỏ Cá

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

tôi thấy trong các tài liệu cá rằng [email protected] trong Bash có thể được thay thế bằng trong cá. Nhưng tôi không thể thấy những gì để thay thế dirname $0 bằng.

Có ai biết kịch bản tương đương trong Cá không?

+0

Tôi đề nghị để chỉnh sửa các câu hỏi để làm nổi bật chuyển đổi $ 0 đến (tình trạng -f), có nghĩa là riêng biệt mà từ gọi java mà là cụ thể cho trường hợp của bạn. Đó là chủ đề thực sự hữu ích! – anddam

Trả lời

1

Các fish tương đương như sau:

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

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

Hey Dennis cảm ơn bạn đã trả lời. Tôi đã có một vấn đề kỳ lạ mặc dù, $ _ luôn luôn là một chuỗi rỗng cho tôi. Ý tưởng nào? –

+0

$ _ sẽ không hoạt động trong kịch bản với cá chép, thay vào đó hãy kiểm tra câu trả lời của câu trả lời khác. – anddam

+0

@anddam: Nó hoạt động cho tôi trong Cá 1.23.1 –

5

$ _ dường như chỉ làm việc trực tiếp qua dòng đầu đọc/lệnh, hoặc khi kịch bản được nguồn gốc, đối với tôi.

lẽ điều này sẽ làm việc cho bạn:

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