let testread disk path = let module File = struct let name = disk end in let module U = Simplefs.Mount (Disk.Opendisk (File)) in let desc = U.openfile path [U.O_RDWR; U.O_CREAT; ] 0o666 in let buffer_size = 1024 in let buffer = String.create buffer_size in let rec copy_loop () = match U.read desc buffer 0 buffer_size with 0 -> () | r -> ignore (Unix.write Unix.stdout buffer 0 r); copy_loop () in copy_loop (); U.close desc;; if Array.length Sys.argv > 2 then Printexc.catch testread Sys.argv.(1) Sys.argv.(2);; |