你的代码有两个问题。
-
cwd
具有类型
Maybe String
,不仅仅是
String
,您需要使用
Just
构造函数显式。
-
默认情况下
{}
附加到最接近的参数,在本例中,这是
"cwd"
弦。但是,需要指定函数调用结果的字段。
像这样写代码对我很有用:
ghci> (shell "cwd") { cwd = Just "/home" }
CreateProcess
{ cmdspec = ShellCommand "cwd"
, cwd = Just "/home"
, env = Nothing
, std_in = Inherit
, std_out = Inherit
, std_err = Inherit
, close_fds = False
, create_group = False
, delegate_ctlc = False
, detach_console = False
, create_new_console = False
, new_session = False
, child_group = Nothing
, child_user = Nothing
, use_process_jobs = False
}