如何在F#编译的程序中获取命令行参数?如果我不使用默认模板
,是否可能[<EntryPoint>]
let Main(args) = ...
我试过
let args = Sys.argv
和
let args = fsi.CommandLineArgs
但它对我不起作用: - (
答案 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"|]