如何将命令行参数传递给 stack exec
How do I pass command line arguments to stack exec
我正在构建一个 Haskell 程序,该程序使用命令行参数解析器和选项应用程序库。因为我正在使用堆栈来构建和测试我的项目,所以我想使用堆栈 exec 来执行我的程序传递命令行参数,比如
stack exec myprogram-exe -i myfile.txt
但是当我尝试执行时,Stack 给我以下消息:
Usage: stack exec CMD [-- ARGS (e.g. stack ghc -- X.hs -o x)] ([--plain] |
([--ghc-package-path] | [--no-ghc-package-path])
([--stack-exe] | [--no-stack-exe]) [--package ARG])
有没有一种方法可以将命令行参数传递给使用 Stack 执行的程序?
像这样的东西应该可以工作:
stack exec -- myprogram-exe -i myfile.txt
Michael Snoyman 所说的另一种方式应该是这样的:
$(stack exec which foo)
您还可以使用 stack build
和 --exec
标志来在一个命令中构建和执行。可执行文件的参数必须包含在 exec 参数中。
$ stack build --exec "myexecutable arg1 arg2"
我正在构建一个 Haskell 程序,该程序使用命令行参数解析器和选项应用程序库。因为我正在使用堆栈来构建和测试我的项目,所以我想使用堆栈 exec 来执行我的程序传递命令行参数,比如
stack exec myprogram-exe -i myfile.txt
但是当我尝试执行时,Stack 给我以下消息:
Usage: stack exec CMD [-- ARGS (e.g. stack ghc -- X.hs -o x)] ([--plain] |
([--ghc-package-path] | [--no-ghc-package-path])
([--stack-exe] | [--no-stack-exe]) [--package ARG])
有没有一种方法可以将命令行参数传递给使用 Stack 执行的程序?
像这样的东西应该可以工作:
stack exec -- myprogram-exe -i myfile.txt
Michael Snoyman 所说的另一种方式应该是这样的:
$(stack exec which foo)
您还可以使用 stack build
和 --exec
标志来在一个命令中构建和执行。可执行文件的参数必须包含在 exec 参数中。
$ stack build --exec "myexecutable arg1 arg2"