运营商<!---->在FAKE构建脚本中做了什么?

时间:2016-01-22 20:01:27

标签: f# f#-fake

我刚刚在ProjectScaffold生成的FAKE构建脚本中找到了这个目标:

// Copies binaries from default VS location to expected bin folder
// But keeps a subdirectory structure for each project in the
// src folder to support multiple project outputs
Target "CopyBinaries" (fun _ ->
    !! "src/**/*.??proj"
    -- "src/**/*.shproj"
    |>  Seq.map (fun f -> ((System.IO.Path.GetDirectoryName f) 
            </> "bin/Release", "bin" 
            </> (System.IO.Path.GetFileNameWithoutExtension f)))
    |>  Seq.iter (fun (fromDir, toDir) -> CopyDir toDir fromDir (fun _ -> true))
)

我的问题:这个奇怪的</>运营商做了什么?

(我的互联网搜索不太成功。)

1 个答案:

答案 0 :(得分:11)

运算符</>是一个中缀运算符,它将两个路径段合并为一个完整路径。在这方面,它几乎与@@运算符相同。 {@ 1}}运算符是在@@运算符之后创建的,因为当第二个路径以root开头时,@@运算符在类UNIX系统上表现异常。

以下是从GitHub上的问题描述中获取的示例。

</>

运营商在EnvironmentHelper中定义: https://fsharp.github.io/FAKE/apidocs/fake-environmenthelper.html

这些链接指向问题描述: https://github.com/fsharp/FAKE/issues/670https://github.com/fsharp/FAKE/pull/695