如何使用 PowerShell 将项目从一个位置复制到另一个位置?
powershellmicrosoft technologiessoftware & coding更新于 2026/2/15 16:37:17
要在 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

