首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powershell的Copy-Item的-container参数是什么意思?

Powershell的Copy-Item的-container参数是什么意思?
EN

Stack Overflow用户
提问于 2008-09-24 18:53:16
回答 2查看 25.1K关注 0票数 45

我正在为MS PowerShell编写脚本。此脚本使用Copy-Item命令。此命令的一个可选参数是"-container“。该参数的文档指出,指定此参数“在复制操作期间保留容器对象”。

这一切都很好,因为在复制操作期间,我是最后一个想要未保留容器对象的人。但说真的,这个论点有什么用呢?特别是在将磁盘目录树从一个位置复制到另一个位置的情况下,这对Copy-Item命令的行为有什么影响?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2008-09-24 19:38:18

文档中提到的容器是文件夹结构。如果您正在执行递归复制,并且希望保留文件夹结构,则可以使用-container开关。(注意:默认情况下,-container开关设置为true,因此您实际上不需要指定它。如果你想关闭它,你可以使用-container: $false。)

这里面有个陷阱。如果您创建了一个目录列表并通过管道将其传递给Copy-Item,那么它将不会保留文件夹结构。如果要保留文件夹结构,则必须指定-path属性和-recurse开关。

票数 35
EN

Stack Overflow用户

发布于 2014-02-15 22:13:29

我也发现文档帮助不大。我做了一些测试,看看在复制文件和文件夹时,-Container参数如何与-Recurse一起工作。

注意,-Container的意思是-Container: $true

这是我在示例中使用的文件结构:

代码语言:javascript
复制
#    X:.
#    ├───destination
#    └───source
#        │   source.1.txt
#        │   source.2.txt
#        │
#        └───source.1
#                source.1.1.txt

对于所有示例,当前位置(pwd)均为X:\.

  • I
  • PowerShell 4.0。

1)仅复制源文件夹(空文件夹):

代码语言:javascript
复制
Copy-Item -Path source -Destination .\destination
Copy-Item -Path source -Destination .\destination -Container
#    X:.
#    ├───destination
#    │   └───source
#    └───source (...)

下面给出了一个错误:

代码语言:javascript
复制
Copy-Item -Path source -Destination .\destination -Container: $false
# Exception: Container cannot be copied to another container. 
#            The -Recurse or -Container parameter is not specified.     

2)复制包含文件的整个文件夹结构:

代码语言:javascript
复制
Copy-Item -Path source -Destination .\destination -Recurse
Copy-Item -Path source -Destination .\destination -Recurse -Container
#    X:.
#    ├───destination
#    │   └───source
#    │       │   source.1.txt
#    │       │   source.2.txt
#    │       │
#    │       └───source.1
#    │               source.1.1.txt
#    └───source (...)    

3)将所有子体(文件和文件夹)复制到单个文件夹中:

代码语言:javascript
复制
Copy-Item -Path source -Destination .\destination -Recurse -Container: $false
#    X:.
#    ├───destination
#    │   │   source.1.1.txt
#    │   │   source.1.txt
#    │   │   source.2.txt
#    │   │
#    │   └───source.1
#    └───source (...)
票数 76
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/129088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档