- (* Print all files. *)
- let files = Augeas.matches aug "/files/*" in
- List.iter print_endline files;
-
- (* Print all Augeas-metainfo. *)
- let augs = Augeas.matches aug "/augeas/*" in
- List.iter print_endline augs;
-
+ (* Print all files recursively. *)
+ let rec print path =
+ if path <> "" then (
+ let value = Augeas.get aug path in
+ match value with
+ | None -> print_endline path
+ | Some value -> Printf.printf "%s -> '%s'\n%!" path value
+ );
+ let files = List.sort compare (Augeas.matches aug (path ^ "/*")) in
+ List.iter print files
+ in
+ print "";