gpt4 book ai didi

f# - Fsharp/FAKE中的双感叹号(!!)是什么?

转载 作者:行者123 更新时间:2023-12-04 06:53:55 24 4
gpt4 key购买 nike

我遇到了以下代码,无法理解双感叹号提供的操作。该代码片段来自CICD系统中使用的FAKE脚本。 Microsoft's Symbol and Operator Reference没有列出此运算符,我也无法在FAKE's API Reference中找到它。

  !! (projectPackagePath + "/*.zip")
|> Seq.iter(fun path ->
trace ("Removing " + path)
ShellExec tfCommand ("delete " + path + " /noprompt")

用法的另一个例子
let buildLabelFiles = 
!!(labelPath @@ "*.txt")

最佳答案

!!运算符采用文件模式,并返回与该模式匹配的文件的集合。

例如,如果要打印当前文件夹中的所有文本文件,可以编写:

for file in !! "*.txt" do
printfn "%s" file

如果您在源代码中查看 the operator definition,则可以看到它只是用于创建 IGlobbingPattern值(请参阅 type definition)的别名,该值包括指定模式给出的文件。 IGlobbingPattern类型实现了 IEnumerable,因此您可以遍历文件,但是您可以对 IGlobbingPattern进行其他操作,例如使用 ++合并两个文件集或使用 --从文件集中删除一些文件。

关于f# - Fsharp/FAKE中的双感叹号(!!)是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46933078/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com