open Sys;; open Unix;; open Misc;; exception Path of string * string;; let path_sep = ":";; let path_sep_regexp = Str.regexp (Str.quote path_sep);; let list_of_path = Str.split path_sep_regexp;; let path_of_list paths = (* Un nom de fichier dans un chemin ne doit pas contenir le séparateur... *) let check s = if Str.string_match path_sep_regexp s 0 then let pos = Str.match_beginning() in let mes = Printf.sprintf "Separator string found at position %d" pos in raise (Path (s, mes)) in List.iter check paths; String.concat path_sep paths;; let get_path () = list_of_path (getenv "PATH");; |