假设我想unrar x archivename
从 Haskell 中执行命令。
最好的方法是什么?如何获取命令的退出代码?如果命令成功退出,我不想删除存档。
假设我想unrar x archivename
从 Haskell 中执行命令。
最好的方法是什么?如何获取命令的退出代码?如果命令成功退出,我不想删除存档。
from的readProcessWithExitCode
功能System.Process
应该可以完成这项工作。
import Control.Monad
import System.Directory
import System.Exit
import System.Process
main = do
(exitCode, _, _) <- readProcessWithExitCode "unrar" ["x", "archivename"] ""
when (exitCode == ExitSuccess) $ removeFile "archivename"
在process
库中,您会找到readProcessWithExitCode
执行您想要的功能的函数。就像是:
(e,_,_) <- readProcessWithExitCode "unrar" ["unrar", "x", "-p-", "archivename"] ""
if e == ExitSuccess then ... else ...
还有很多其他的解决方案,比如system
命令。任你选。