File: process006.hs

package info (click to toggle)
ghc 8.8.4-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 80,760 kB
  • sloc: haskell: 461,232; ansic: 62,975; sh: 8,706; python: 1,902; asm: 1,714; makefile: 1,120; perl: 458; javascript: 207; xml: 196; cpp: 147; ruby: 84; lisp: 7
file content (15 lines) | stat: -rw-r--r-- 492 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module Main where

import Control.Concurrent
import System.IO
import System.Process
import Control.Monad
import Control.Exception

main :: IO ()
main = do 
  print =<< readProcess "cat" [] "yan\ntan\tether\n"
  print =<< readProcessWithExitCode "cat" [] "yan\ntan\tether\n"
  print =<< readProcessWithExitCode "sh" ["-c", "echo stdout; echo stderr 1>&2; exit 3"] ""
  e <- (try $ readProcess "sh" ["-c", "echo stdout; echo stderr 1>&2; exit 3"] "")
  print (e :: Either SomeException String)