使用参数运行f#脚本

时间:2014-12-07 13:16:18

标签: f#-interactive fsi

我尝试通过批处理文件

使用fsi.exe运行f#脚本
CALL "path\fsi.exe" --quiet --exec --use:"path\FindAndDelete.fsx" arg1 arg2 arg3

我需要我的脚本程序与arg1 arg2和arg3一起运行。但命令:

for arg in Environment.GetCommandLineArgs() do
    printfn "%s" arg

打印所有参数并说arg1是错误的参数,但我需要在我的脚本中只使用arg1,arg2,arg3。虽然使用参数运行f#脚本并使用它们进行操作的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

我个人使用fsi.CommandLineArgs。第0个参数是文件名,因此您可以使用Array.tai​​l来获取args。

let args : string array = fsi.CommandLineArgs |> Array.tail
let first = args.[0]
let second = args.[1]

或者,如果您决定使用GetCommandLineArgs(),则看起来第一个参数是列表中的第4个元素,也就是args。[3]

  

fsi --exec outputGetCommandlineArgs.fsx哇,是的

输出

[|"pathtofsi\fsi.exe"; "--exec"; "outputGetCommandlineArgs.fsx"; "woah"; "yay"; "no"|]