我有bash脚本,它需要bash.
另一个人尝试用它来运行它
sh script_name.sh
Run Code Online (Sandbox Code Playgroud)
它失败了,因为sh是他的发行版中的破折号的象征性链接.
$ ls -la /bin/sh
lrwxrwxrwx 1 root root 4 Aug 25 16:06 /bin/sh -> dash
Run Code Online (Sandbox Code Playgroud)
我有一个想法使用包装脚本:
#!/bin/sh
bash script_name.sh
Run Code Online (Sandbox Code Playgroud)
目标是使用带有符号链接到破折号的系统中的bash运行.sh脚本.
我有可以返回null值的函数:
def func(arg: AnyRef): String = {
...
}
Run Code Online (Sandbox Code Playgroud)
我想将结果添加到列表中,如果它不是null:
...
val l = func(o)
if (l != null)
list :+= l
....
Run Code Online (Sandbox Code Playgroud)
要么
def func(arg: AnyRef): Option[String] = {
...
}
Run Code Online (Sandbox Code Playgroud)
...
func(o).filter(_ != null).map(f => list :+= f)
...
Run Code Online (Sandbox Code Playgroud)
但它看起来太沉重了.
还有更好的解决方案吗?