Haskell で実行すると、rawSystem "cmd.exe" ["/c", "dir"]
以下に示すような cmd の認識されないコマンド メッセージが生成されます。
Prelude System.Cmd> rawSystem "cmd.exe" ["/c", "dir"]
'"dir' is not recognized as an internal or external command,
operable program or batch file.
ExitFailure 1
エラー メッセージに示されているように、問題は、2 番目の引数の前に引用符 ( "
) が付加されていることです。同じことが["/c", ""]
引数にも当てはまります。それは言い'"' not recognized
ます。
これはHaskellよりもcmdのせいだと思いますが、これに対処するにはHaskellソリューションが必要なので、次のようにします。
なぜこれが起こるのですか?
さらに重要なことに、この問題を回避するにはどうすればよいですか?