F#程序中的命令行参数?

时间:2013-06-14 16:11:34

标签: .net f#

如何在F#编译的程序中获取命令行参数?如果我不使用默认模板

,是否可能
[<EntryPoint>]
let Main(args) = ...

我试过

let args = Sys.argv

let args = fsi.CommandLineArgs

但它对我不起作用: - (

1 个答案:

答案 0 :(得分:10)

如果您不想使用传递给main函数的args数组,那么您可以使用System.Environment.GetCommandLineArgs()代替。请注意,这将包括作为第一项运行的程序的名称,与主函数的args数组不同。

open System

[<EntryPoint>]
let main(args) =    
    printfn "args: %A" args
    printfn "env.cmdline: %A" <| Environment.GetCommandLineArgs()    
    0

args.exe 1 2 3 4运行:

args: [|"1"; "2"; "3"; "4"|]
env.cmdline: [|"args.exe"; "1"; "2"; "3"; "4"|]