我知道the -skip parameter,但有没有办法告诉MSDeploy跳过多个目录?多次调用参数似乎不起作用。
答案 0 :(得分:36)
如果文件夹C:\Data\Personal\My Repo\MSDeploy\MultiSkip
中包含以下文件。
要将源同步到dest,命令将是:
msdeploy -verb:sync
-source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source"
-dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"
更改如下图所示。
没有跳过,有19次更改。
跳过1个文件夹
然后跳过sub03目录的命令是:
msdeploy -verb:sync
-source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source"
-dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"
-skip:objectName=dirPath,absolutePath="sub03"
结果将是:
所以有14个添加的文件。
跳过2个目录
要跳过2个目录,命令将是
msdeploy -verb:sync
-source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source"
-dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"
-skip:objectName=dirPath,absolutePath="sub03"
-skip:objectName=dirPath,absolutePath="sub02"
然后结果是 这里只有9个更改,因此我们可以看到多个跳过确实有效。
答案 1 :(得分:5)
skip:objectName=dirPath,absolutePath=
接受正则表达式,因此您可以使用以下方法获得与上述答案相同的结果:
-skip:objectName=dirPath,absolutePath="sub02|sub03"
管道|
表示OR