【问题标题】:writing ghci session in a shell script在 shell 脚本中编写 ghci 会话
【发布时间】:2021-08-05 22:31:15
【问题描述】:

我正在使用queryparser 工具来解析查询。我正在使用stack ghci命令将工具的组件和文件加载到ghci中,并将编写haskell命令。一旦我使用“stack ghci”,它就会进入交互模式来编写命令

我想编写一个 shell 脚本并自动执行该过程,并以编程模式运行命令。

我尝试运行的命令会像

demoTableLineage "INSERT INTO foo SELECT * FROM bar" demoJoins "SELECT * FROM foo JOIN bar ON a=x AND b+c = y+z"

有人想用 shell 脚本编写它们并以编程方式而不是交互方式自动化它们吗?

【问题讨论】:

  • Haskell 的 shebang 是 runhaskell,所以你可以把 #!/usr/bin/runhaskell 作为脚本的第一行。

标签: bash shell haskell stack command


【解决方案1】:

在 Unix 系统上,您可以创建一个可执行文件,其中 shebang [wiki] 指的是 runhaskell 可执行文件。这通常位于/usr/bin/runhaskell,因此您可以使用:

#!/usr/bin/runhaskell

main = print (2+2)

如果您随后使文件可执行 (chmod +x myfile.hs),那么您可以使用以下命令运行它:

$ ./myfile.hs
4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 2022-11-12
    • 2021-06-30
    • 1970-01-01
    相关资源
    最近更新 更多