如何从另一个控制台程序启动控制台程序?

时间:2014-12-01 15:05:43

标签: haskell command-line console

我想知道如何从运行Haskell控制台程序B启动控制台程序A(使用生成的命令行指令),以便用户能够与程序{{1当程序B结束时,程序B将恢复。

我想尽可能无缝地安排它。

1 个答案:

答案 0 :(得分:4)

如果它刚刚通过shell命令启动,请使用System.Process中的callCommand

import System.Process
import Control.Monad

main :: IO ()
main = do
  putStrLn "Inside Haskell, Run emacs?"
  q <- getLine
  when (q == "y") (callCommand "emacs -nw")
  putStrLn "Back inside Haskell"