MSDeploy中出现多个跳过操作?

15

我知道 -skip参数,但是有没有办法告诉MSDeploy跳过多个目录?多次调用该参数似乎不起作用。

2个回答

38
如果您在文件夹 C:\Data\Personal\My Repo\MSDeploy\MultiSkip 中有以下文件: alt text

同步源到目标的命令是:
msdeploy -verb:sync 
    -source:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Source" 
    -dest:contentPath="C:\Data\Personal\My Repo\MSDeploy\MultiSkip\Dest"

以下内容展示了变化,如下图所示:alt text

如果不跳过任何文件夹,则有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"
结果将是:

结果如下:

alt text

因此,增加了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"

然后得到的结果是 alt text 这里只有9个变化,所以我们可以看到多重跳过确实起作用了。


6
skip:objectName=dirPath,absolutePath= 接受一个正则表达式,因此您可以使用以下方式实现与上面答案相同的结果:
-skip:objectName=dirPath,absolutePath="sub02|sub03"

管道符号|表示或者的意思。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接