您可以使用 .net 内核运行 F# 脚本文件 (.fsx) 吗?
Posted
技术标签:
【中文标题】您可以使用 .net 内核运行 F# 脚本文件 (.fsx) 吗?【英文标题】:Can you run an F# script file (.fsx) using .net core? 【发布时间】:2017-08-20 01:51:43 【问题描述】:是否可以使用 .net 内核运行 .fsx 文件? (相当于 Mono 上的 fsharpi
。)
【问题讨论】:
你为此做了什么? 我尝试了fsi
,但它在 .net core 上尚不可用 - 我听说团队将在某个阶段添加此功能。因此,目前我正在使用来自单声道的fsharpi
。
@Martimatix 我知道这是一个老问题,但现在 .NETCore3 开箱即用,最好切换接受的答案
【参考方案1】:
它在 .NETCore v3.0 或更高版本中开箱即用:
$ cat hello.fsx
#!/usr/bin/env fsharpi
printfn "hello world"
$ dotnet fsi hello.fsx
hello world
$ dotnet --version
3.0.100
PS:旁注:如果您想编译您的脚本而无需运行它们,请查看this tool(抱歉,目前仅兼容 Linux/Mac,我们接受 PR 以添加 Windows 支持)。
【讨论】:
【参考方案2】:我一直在寻找这个答案,我能找到的最佳答案与您从 3 月 28 日开始的@Martimatix 评论相匹配,但是我确实在跟踪 support for fsi on .NET Core 2.0 的 visualfsharp 存储库中找到了问题 2407。
更新(2009 年 4 月): 看起来现在有 .NET Core 的预览版可用。 https://devblogs.microsoft.com/dotnet/announcing-net-core-3-preview-3/
【讨论】:
【参考方案3】:他们正在努力。 This is the main issue, jpierson 发布的相同。
你现在可以试试这样的:
dotnet /usr/share/dotnet/sdk/2.1.403/FSharp/fsi.exe test.fsx
它有点 / 有点工作,但缺少部分,特别是完全支持 #r
和交互式行编辑 (readline)。
【讨论】:
运气不好pwsh PS C:\Users\info\Projects\Insights> dotnet fsi .\experiment.fsx No executable found matching command "dotnet-fsi" PS C:\Users\info\Projects\Insights> dotnet fsi.exe .\experiment.fsx No executable found matching command "dotnet-fsi.exe" PS C:\Users\info\Projects\Insights> dotnet $(which fsi) .\experiment.fsx No executable found matching command "dotnet-/c/Program Files/dotnet/sdk/2.1.403/FSharp/fsi"
以上是关于您可以使用 .net 内核运行 F# 脚本文件 (.fsx) 吗?的主要内容,如果未能解决你的问题,请参考以下文章