用shell脚本编写ghci会话



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

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

我试图运行的命令将像一样

demoTableLineage"INSERT INTO foo SELECT*FROM bar";demoJoins";从a=x和b+c=y+z上的foo JOIN条选择*";

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

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

#!/usr/bin/runhaskell
main = print (2+2)

如果您随后使文件可执行(chmod +x myfile.hs(,那么您可以使用运行该文件

$ ./myfile.hs
4