带示例的Powershell复制项命令教程

Powershell提供 Copy-Item cmdlet将项目从一个位置复制到另一个位置。此项目可以是文件、文件夹或目录。Copy-Item cmdlet提供了不同的功能和选项,如覆盖、筛选、排除、详细、进度等。在本教程中,我们将通过示例学习这些功能。

null

将文件复制到指定目录

我们将从一个简单的示例开始,在这个示例中,我们将把给定的文件复制到指定的目录。我们将使用只提供源文件和目标文件名及其路径。

PS> Copy-Item .config.sys test.sys

我们也可以使用 -Destination 选项指定如下所示的目的地。

PS> Copy-Item .config.sys -Destination test.sys
Copy File To Specified Directory
将文件复制到指定目录

递归地将目录复制到指定目录

我们还可以使用将目录及其内容复制到指定的或目标目录 -Recurse 选项。Recurse选项将给定源目录的所有子文件和文件夹复制到目标目录。

PS> Copy-Item .PerfLogs PerfBack -Recurse

将文件复制到远程服务器

Copy-Item 是一个非常有用的命令,我们可以使用复制本地文件和文件夹到远程服务器,支持PS远程处理。在本例中,我们将使用 -ComputerName 选项。我们可以使用计算机名主机名或IP地址。在本例中,我们将使用IP地址复制到远程服务器 192.168.1.10

PS> Copy-Item .PerfLogs PerfBack -ComputerName 192.168.1.10

将目录复制到远程服务器

我们也可以复制本地 到远程服务器或系统的文件夹和目录。我们还将使用 -ComputerName 与上一个示例类似的选项。我们还将提供 -Recurse 选项以复制子文件夹和目录。

PS> Copy-Item .PerfLogs PerfBack -Recurse -ComputerName 192.168.1.10

从远程复制文件 服务器到本地服务器

我们还可以将远程文件从远程服务器复制到本地系统。我们将使用 New-PSSession cmdlet并将此会话与 -ToSession 选项。在 本例中,我们将从名为 DC1 .

$Sessions=New-PSSession -ComputerName "DC1" -Credential "Poftutismail"PS> Copy-Item "C:	est.txt" "D:	est.txt"  -ToSession $Sessions

从远程服务器复制目录  到本地服务器

我们还可以将远程服务器目录递归地复制到本地系统。我们将使用上一个示例中非常类似的命令。我们只提供 -Recurse 选项。

$Sessions=New-PSSession -ComputerName "DC1" -Credential "Poftutismail"PS> Copy-Item "C:PerfLogs" "D:PerfLogs" -Recurse -ToSession $Sessions

覆盖到文件

如果目标中有相同的文件或文件夹,则不会复制该文件或文件夹。如果我们想复制甚至目标文件或文件夹存在,我们需要强制它与覆盖选项。我们将使用 -Force 选项以覆盖。

PS> Copy-Item .config.sys test.sys -Force

根据名称筛选文件

在复制文件和文件夹时,我们可以过滤它们。如果我们不想复制指定的文件名。

相关文章: 有用的Linux命令

根据扩展名筛选文件

我们可以根据文件的扩展名过滤复制的文件。我们还将使用 -Exclude -Include 选项并提供如下扩展 .txt , .sql 在这个例子中,我们将过滤并只复制txt文件。

PS> Copy-Item .config.sys test.sys -Include "*.txt"

排除给定文件

我们还可以使用 -Exclude 选项。我们将提供部分文件名。在本例中,我们将排除以 Sql .

PS> Copy-Item .config.sys test.sys -Exclude "Sql*"

详细复制操作

在复制操作期间,我们可能需要有关该操作的更多信息。我们可以使用 -Verbose 选项。

PS> Copy-Item .PerfLogs PerfBack -Recurse -Verbose
Verbose Copy Operation
详细复制操作

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享