我知道 -skip参数,但是有没有办法告诉MSDeploy跳过多个目录?多次调用该参数似乎不起作用。
C:\Data\Personal\My Repo\MSDeploy\MultiSkip
中有以下文件:
同步源到目标的命令是: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个变化,所以我们可以看到多重跳过确实起作用了。
skip:objectName=dirPath,absolutePath=
接受一个正则表达式,因此您可以使用以下方式实现与上面答案相同的结果:-skip:objectName=dirPath,absolutePath="sub02|sub03"
管道符号|
表示或者的意思。