我知道有Sys.os_type
,但它将OSX、Linux等都归入同一类别。我想检测操作系统,最重要的是区分OSX和Linux。
你可以试试这样的东西:
# let ic = Unix.open_process_in "uname" in
let uname = input_line ic in
let () = close_in ic in
uname;;
- : string = "Darwin"
在OSX中,它返回"Darwin"。在Linux中,它返回"Linux"(至少这是我刚才尝试时看到的)。
我不知道Windows上的行为。但至少会有所不同:-)