1111 runEnv!
1212 runStat!
1313
14- Cmd . exec ! " echo" [" SUCCESS " ]
14+ Cmd . exec ! " echo" [" EXEC " ]
1515
1616# Run "env" with verbose option, clear all environment variables, and pass in
1717# "FOO" and "BAZ".
@@ -25,33 +25,30 @@ runEnv =
2525 |> Task . result !
2626
2727 when result is
28- Ok {} -> Stdout . line " Success "
28+ Ok {} -> Stdout . line " STATUS "
2929 Err (ExitCode code) ->
3030 codeStr = Num . toStr code
3131 Stdout . line " Child exited with non-zero code: $( codeStr) "
3232
3333 Err KilledBySignal -> Stdout . line " Child was killed by signal"
3434 Err (IOError err) -> Stdout . line " IOError executing: $( err) "
3535
36- # Run "stat " with environment variable "FOO" set to "BAR" and three arguments:
37- # "--format", "'%A'", and "LICENSE". Capture stdout and stderr and print them.
36+ # Run "env " with verbose option, clear all environment variables, and pass in
37+ # only as an environment variable "FOO"
3838runStat =
3939 output =
40- Cmd . new " stat"
40+ Cmd . new " env"
41+ |> Cmd . clearEnvs
4142 |> Cmd . env " FOO" " BAR"
42- |> Cmd . args [
43- " --format" ,
44- " '%A'" , # print permission bits in human readable form
45- " LICENSE" , # filename
46- ]
43+ |> Cmd . args [" -v" ]
4744 |> Cmd . output
4845 |> Task . onErr ! \(output, err) ->
4946 when err is
5047 ExitCode code -> Task . err (StatError " Child exited with non-zero code: $( Num . toStr code) , stderr: $( output. stderr |> Str . fromUtf8 |> Result . withDefault " " ) " )
5148 KilledBySignal -> Task . err (StatError " Child was killed by signal" )
5249 IOError ioErr -> Task . err (StatError " IOError executing: $( ioErr) " )
5350
54- stdoutStr = output. stdout |> Str . fromUtf8 |> Result . withDefault " Failed to decode stdout "
55- stderrStr = output . stderr |> Str . fromUtf8 |> Result . withDefault " Failed to decode stderr "
56-
57- Stdout . write " STDOUT $( stdoutStr ) \n STDERR $( stderrStr ) \n "
51+ output. stdout
52+ |> Str . fromUtf8
53+ |> Result . withDefault " Failed to decode stdout "
54+ |> Stdout . write
0 commit comments