Module OS.Cmd

val find_tool : ?search:Fpath.t list -> Cmd.t -> (Fpath.t option, [> Rresult.R.msg ]) result
val get_tool : ?search:Fpath.t list -> Cmd.t -> (Fpath.t, [> Rresult.R.msg ]) result
val exists : ?search:Fpath.t list -> Cmd.t -> (bool, [> Rresult.R.msg ]) result
val must_exist : ?search:Fpath.t list -> Cmd.t -> (Cmd.t, [> Rresult.R.msg ]) result
val resolve : ?search:Fpath.t list -> Cmd.t -> (Cmd.t, [> Rresult.R.msg ]) result
val search_path_dirs : ?sep:string -> string -> (Fpath.t list, [> Rresult.R.msg ]) result
type status = [
  1. | `Exited of int
  2. | `Signaled of int
]
val pp_status : status Fmt.t
type run_info
val run_info_cmd : run_info -> Cmd.t
type run_status = run_info * status
val success : ('a * run_status, [> Rresult.R.msg ] as 'b) result -> ('a, 'b) result
type run_err
val err_file : ?append:bool -> Fpath.t -> run_err
val err_null : run_err
val err_run_out : run_err
val err_stderr : run_err
type run_in
val in_string : string -> run_in
val in_file : Fpath.t -> run_in
val in_null : run_in
val in_stdin : run_in
type run_out
val out_string : ?trim:bool -> run_out -> (string * run_status, [> Rresult.R.msg ]) result
val out_lines : ?trim:bool -> run_out -> (string list * run_status, [> Rresult.R.msg ]) result
val out_file : ?append:bool -> Fpath.t -> run_out -> (unit * run_status, [> Rresult.R.msg ]) result
val out_run_in : run_out -> (run_in, [> Rresult.R.msg ]) result
val out_null : run_out -> (unit * run_status, [> Rresult.R.msg ]) result
val out_stdout : run_out -> (unit * run_status, [> Rresult.R.msg ]) result
val to_string : ?trim:bool -> run_out -> (string, [> Rresult.R.msg ]) result
val to_lines : ?trim:bool -> run_out -> (string list, [> Rresult.R.msg ]) result
val to_file : ?append:bool -> Fpath.t -> run_out -> (unit, [> Rresult.R.msg ]) result
val to_null : run_out -> (unit, [> Rresult.R.msg ]) result
val to_stdout : run_out -> (unit, [> Rresult.R.msg ]) result
val run_io : ?env:Env.t -> ?err:run_err -> Cmd.t -> run_in -> run_out
val run_out : ?env:Env.t -> ?err:run_err -> Cmd.t -> run_out
val run_in : ?env:Env.t -> ?err:run_err -> Cmd.t -> run_in -> (unit, [> Rresult.R.msg ]) result
val run : ?env:Env.t -> ?err:run_err -> Cmd.t -> (unit, [> Rresult.R.msg ]) result
val run_status : ?env:Env.t -> ?err:run_err -> ?quiet:bool -> Cmd.t -> (status, [> Rresult.R.msg ]) result