繁体   English   中英

haskell和Unix shell脚本

[英]haskell and Unix shell scripting

是否有可能在unix shell脚本中使用haskell函数?

例如:

#!/bin/bash

...
var1=value
...

# use haskell function with input from shell variable var1
# and store the result into another shell variable var2

var2=haskellFunction $var1

...

我想在shell脚本中使用变量作为haskell函数的参数和结果

提前致谢。

吉米

使用-e开关到ghc ,例如

var2=$(ghc -e "let f x = x*x + x/2 in f $var1")

对于字符串处理,最好将Haskell的interact与bash的字符串结合使用:

var2=$(ghc -e 'interact reverse' <<<$var1)

此外,您可以使用ghci编写脚本:只需将shebang #!/usr/bin/env runhaskell放在脚本的第一行并使其可执行。 这些脚本可以像往常一样从sh/bash/ksh/csh/whatever脚本调用。

例如

$ cat > hello.hsh
#!/usr/bin/env runhaskell

main = putStrLn "Hello world!"

$ chmod +x hello.hsh
$ ./hello.hsh
Hello world!
$

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM