gpt4 book ai didi

powershell - 复制项-递归会跳过一个子目录的创建

转载 作者:行者123 更新时间:2023-12-02 23:41:32 25 4
gpt4 key购买 nike

我想将具有所有子目录的所有文件复制到另一台计算机(使用WinRM session ),并且脚本的复制部分如下所示:

$sourceDir = "C:\Build\Application1"
$targetDir = "C:\Install\Application1"
Copy-Item -ToSession $session -Path $sourceDir\* -Destination $targetDir -Recurse -Force
$sourceDir包含两个子目录:
C:\Build\Application1 (3 files)
|
+--- Application Files (empty)
|
+--- Application_2016_12_10_2 (10 files)

场景1

如果 Application1中的 C:\Install文件夹 不存在,则执行我的脚本后目标文件夹结构如下所示:
C:\Install\Application1 (3 files)
|
+--- Application_2016_12_10_2 (10 files)

方案2

如果 Application1中的 C:\Install文件夹已经 存在,则目标文件夹结构如下所示:
C:\Install\Application1 (3 files)
|
+--- Application Files (empty)
|
+--- Application_2016_12_10_2 (10 files)

为什么我的脚本在第一种情况下不创建文件夹 Application Files?有人可以澄清吗?

我正在使用Powershell 5

最佳答案

看到您面临的问题是因为您告诉Powershell从 sourcedir \ * 复制项目。结果,它正在寻找它的内容。

因此,直接使用它就可以了:

$sourceDir = "C:\Build\Application1"
$targetDir = "C:\Install\Application1"
Copy-Item -ToSession $session -Path $sourceDir -Destination $targetDir -Recurse -Force

希望能帮助到你

关于powershell - 复制项-递归会跳过一个子目录的创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41073684/

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