如何解决PowerShell Copy-Item 不创建子文件夹
我希望 copy-Item 复制到目标文件并在此过程中创建任何子文件夹,但我似乎无法使其正常工作。
copy-Item $fullsrc $fulldst -Recurse -Force -Verbose
$fullsrc
和 $fulldst
是带有文件名的完整路径,因为目标文件名与源文件名不同。有没有办法让 copy-Item 创建子文件夹,然后复制文件?
VERBOSE: Performing the operation "copy File" on target "Item: D:\mypath\logs\001.123.log
Destination: D:\newpath\newlogs\123.234.log".
copy-Item : Could not find a part of the path 'D:\newpath\newlogs\123.234.log'.
解决方法
Copy-item 没有创建文件夹的功能,需要事先创建
Copy-Item $fullsrc $(new-item -ItemType Directory -Path $fulldst) -Recurse -Force -Verbose -ErrorAction SilentlyContinue
,
您必须自己创建目标文件的父目录。
# Split-Path with single parameter outputs the parent directory
$null = New-Item (Split-Path $fulldst) -ItemType Directory
Copy-Item $fullsrc $fulldst -Force -Verbose
请注意,当您指定完整的源文件和目标文件路径时,-Recurse
开关没有用,因此我已将其删除。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。