如何知道当前脚本所在的目录
How to know the directory where the current script lies
写脚本时,想知道当前脚本在什么位置,以便定位其他文件。
对于常规的 Scala 脚本,我知道该怎么做,但是对于 Ammonite 脚本我不知道。
我通常使用的不是标准的爆炸线:
#!/usr/bin/env amm
我将脚本更改为:
#!/bin/bash
exec amm "[=11=]" `dirname "[=11=]"` "$@"
!#
@main
def main(dir: String) {
print(dir)
}
dir
参数接收脚本所在的路径。可以是绝对的也可以是相对的。
如果我们总是渴望绝对路径:
#!/bin/bash
exec amm "[=12=]" $(cd `dirname "${BASH_SOURCE[0]}"` && pwd) "$@"
!#
写脚本时,想知道当前脚本在什么位置,以便定位其他文件。
对于常规的 Scala 脚本,我知道该怎么做,但是对于 Ammonite 脚本我不知道。
我通常使用的不是标准的爆炸线:
#!/usr/bin/env amm
我将脚本更改为:
#!/bin/bash
exec amm "[=11=]" `dirname "[=11=]"` "$@"
!#
@main
def main(dir: String) {
print(dir)
}
dir
参数接收脚本所在的路径。可以是绝对的也可以是相对的。
如果我们总是渴望绝对路径:
#!/bin/bash
exec amm "[=12=]" $(cd `dirname "${BASH_SOURCE[0]}"` && pwd) "$@"
!#