ocaml/otherlibs/labltk/browser/useunix.ml

37 lines
749 B
OCaml

(* $Id$ *)
open Unix
let get_files_in_directory dir =
try
let dirh = opendir dir in
let rec get_them () =
try
let x = readdir dirh in
x :: get_them ()
with
_ -> closedir dirh; []
in
Sort.list order:(<) (get_them ())
with Unix_error _ -> []
let is_directory name =
try
(stat file:name).st_kind = S_DIR
with _ -> false
let get_directories_in_files :path =
List.filter pred:(fun x -> is_directory (path ^ "/" ^ x))
(************************************************** Subshell call *)
let subshell :cmd =
let rc = open_process_in cmd in
let rec it () =
try
let x = input_line rc in x :: it ()
with _ -> []
in
let answer = it () in
ignore (close_process_in rc);
answer