Module Ocaml_plugin__.Shell

val set_defaults : ?⁠verbose:bool -> ?⁠echo:bool -> unit -> unit

Global properties regarding bash sys calls. Echo would print the command before running them, and verbose would print the full output of the command.

val flags : unit Async.Command.Param.t

Offers a command line param to set verbose and echo directly.

val run : ?⁠working_dir:string -> ?⁠env:Async.Unix.env -> ?⁠quiet_or_error:bool -> string -> string list -> unit Async.Deferred.Or_error.t
val run_lines : ?⁠working_dir:string -> ?⁠env:Async.Unix.env -> string -> string list -> string list Async.Deferred.Or_error.t
val getcwd : unit -> string Async.Deferred.Or_error.t
val chmod : string -> perm:Async.Unix.file_perm -> unit Async.Deferred.Or_error.t
val temp_dir : in_dir:string -> ?⁠prefix:string -> ?⁠suffix:string -> ?⁠perm:Async.Unix.file_perm -> unit -> string Async.Deferred.Or_error.t

When this function succeed, it returns a absolute pathname.

val absolute_pathname : string -> string Async.Deferred.Or_error.t
val absolute_pathnames : string list -> string list Async.Deferred.Or_error.t
val rm : ?⁠r:unit -> ?⁠f:unit -> string list -> unit Async.Deferred.Or_error.t
val rmdir : string -> unit Async.Deferred.Or_error.t
val cp : source:string -> dest:string -> unit Async.Deferred.Or_error.t
val readdir : string -> string array Async.Deferred.Or_error.t