如何使用PowerShell将项目从一个位置复制到另一位置?

首页 / 新闻资讯 / 正文

要在PowerShell中复制项目,需要使用Copy-Item cmdlet。使用Copy-Item时,需要提供源文件名以及目标文件或文件夹名。

在下面的示例中,我们将单个文件从D:\ Temp复制到D:\ Temp1位置。

示例

Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp1\ -PassThru

输出结果

PS C:\Windows\System32> Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp1\ -PassThru     Directory: D:\Temp1 Mode                LastWriteTime         Length Name ----                -------------         ------ ---- -a----       20-01-2020     12:10        1148809 PowerShellcommands.csv

在上面的示例中,PowerShellCommands.csv文件将从D:\ Temp复制到D:\ Temp1位置。如果文件已经存在,那么它将简单地覆盖文件,而不会出现任何提示,错误或警告。

在命令中使用–Passthru参数时,它将在控制台中显示输出。

使用复制命令时,也可以重命名项目。为此,您需要在目标参数中提及一个新文件名。

示例

Copy-Item -Path D:\Temp\PowerShellcommands.csv  -Destination D:\Temp1\PowerShel lcommands1.csv -PassThru

输出结果

PS C:\Windows\System32> Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp1\PowerShellcommands1.csv -PassThru     Directory: D:\Temp1 Mode                LastWriteTime         Length Name ----                -------------         ------ ---- -a----       20-01-2020     12:10        1148809 PowerShellcommands1.csv

将项目复制到另一个位置时,它们的属性也随它们一起复制。

当您将文件从源文件夹复制到目标文件夹时,如果目标文件夹不存在,则文件将不会被复制,并且将抛出DirectoryNotFoundException异常。

示例

例如,我们将上面提到的PowerShellcommands1.csv文件复制到未知的目标文件夹D:\ Temp2,如下所示。

Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp2\PowerShel lcommands.csv -PassThru

输出结果

PS C:\Windows\System32> Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp2\PowerShellcommands.csv -PassThru Copy-Item : Could not find a part of the path 'D:\Temp2\PowerShellcommands.csv'. At line:1 char:1 + Copy-Item -Path D:\Temp\PowerShellcommands.csv -Destination D:\Temp2\ ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     + CategoryInfo          : NotSpecified: (:) [Copy-Item], DirectoryNotFoundException     + FullyQualifiedErrorId : System.IO.DirectoryNotFoundException,Microsoft.PowerShell.Commands.CopyItemCommand
Top