9

可以通过以下方式启动文本文件,在 Scala 中编写 shell 脚本:

#!/bin/sh
exec scala "$0" "$@"
!#

为了简化脚本创建,我想编写一个名为scalash(可能是 BASH 脚本)的可执行文件,允许将 Scala 脚本头缩短为一行:

#!/bin/scalash

是否可以 ?如果我可以将可选参数传递给额外的点scalash,例如添加类路径依赖项。

4

2 回答 2

17

在 Scala 2.11 中,您可以执行以下操作(与大多数其他语言完全相同):

#!/usr/bin/env scala
println(args.mkString(" "))

在 Scala 2.9.0.1 中,您可以简单地创建以下脚本:

测试.scala

#!/usr/bin/scala
!#
println(args.mkString(" "))

并使其可执行。(将第一行更改为可执行文件的路径)

用法:

# ./test.scala Hello world!
Hello world!
于 2011-10-01T13:20:52.447 回答
8

查看这个拉取请求(是这个)。没有与之相关的问题——如果你愿意,你可以打开一个问题并对拉取请求发表评论。

您还可以使用 SBT 启动脚本。请参阅有关scalas 此处的信息。

编辑

拉取请求被接受,所以这应该工作:

#!/usr/bin/env /path/to/scala
etc
于 2011-10-01T15:11:06.793 回答