编写脚本时,我想知道当前脚本的位置,以便找到其他文件。
使用常规Scala脚本,我知道如何操作,但是使用Ammonite脚本我不知道。
答案 0 :(得分:0)
而不是我通常使用的标准爆炸线:
#!/usr/bin/env amm
我将脚本更改为:
#!/bin/bash
exec amm "$0" `dirname "$0"` "$@"
!#
@main
def main(dir: String) {
print(dir)
}
dir
参数接收脚本所在的路径。它可以是绝对的也可以是相对的。
如果我们总是渴望一条绝对的道路:
#!/bin/bash
exec amm "$0" $(cd `dirname "${BASH_SOURCE[0]}"` && pwd) "$@"
!#