在 PowerShell 中复制文件和文件夹
在所有编程语言中都有几个用于复制文件的命令。但是,在 PowerShell 中,将 PowerShell 脚本中的文件或文件夹从位置 A 复制到位置 B 的最流行方法是使用 PowerShell Copy-Item
cmdlet。
本文将讨论如何复制文件夹和文件,同时让我们能够递归文件夹中的文件,使用通配符选择我们需要复制的文件,并使用 Windows PowerShell Remoting 进行文件复制。
PowerShell 中的 Copy-Item
命令简介
Copy-Item
命令是 Windows PowerShell 提供程序 cmdlet 的一部分。它是一个通用 cmdlet,可通过其 Item
名词识别。
使用 Copy-Item
cmdlet,PowerShell 允许开发人员以多种不同方式复制文件夹和文件。
Copy-Item
命令使用 -Path
参数作为源文件路径和 -Destination
参数作为目标文件夹路径将单个文件从一个位置复制到另一个位置。
Copy-Item -Path C:\Temp\File1.txt -Destination C:\PS\
此 cmdlet 还可以复制文件夹。
Copy-Item -Path C:\Temp\Scripts -Destination C:\PS\
例如,文件夹中有一个只读文件。默认情况下,Copy-Item
不会覆盖它。
在代码片段中添加 -Force
参数以强制覆盖。
Copy-Item -Path C:\Temp\Scripts -Destination C:\PS\ -Force
在 PowerShell 中使用 Copy-Item
命令复制特定文件
除了复制单个文件夹或文件之外,我们还可以复制整个内容。Copy-Item
命令的 -Path
参数接受通配符,如星号 (*
) 以匹配零到多个字符或问号 (?
) 仅匹配单个字符。
Copy-Item -Path C:\Temp\*.ps1 -Destination C:\PS\
Copy-Item -Path 'C:\Temp\File?.txt' -Destination C:\PS\
在 PowerShell 中使用 Copy-Item
命令合并多个文件夹
Copy-Item
的另一个功能是同时复制多个文件夹。此外,我们可以将各种路径传递给 -Path
参数。
Copy-Item
将查看每一个,根据路径复制文件夹或文件,并将它们全部合并到一个目标中。
Copy-Item -Path C:\Temp\*,C:\Scripts\*,C:\Docs\* -Destination C:\PS
在 PowerShell 中使用 Copy-Item
命令递归复制文件
我们通常会遇到父文件夹中有许多子文件夹的情况,我们想复制哪些文件。在 Copy-Item
上使用 -Recurse
参数将查看每个子文件夹并递归复制每个子文件夹中的所有文件和文件夹。
Copy-Item -Path C:\Temp\ -Destination C:\PS -Recurse
使用 Copy-Item
命令使用 PowerShell 远程复制文件
PowerShell 版本 5 的一项功能是此命令能够使用 WinRM 和 PowerShell 远程会话。因此,例如,Copy-Item
使用现有的 PowerShell 会话并传输 -Session
参数文件。
当会话通信被加密时,这是绕过防火墙和额外安全层的好方法。
$session = New-PSSession -ComputerName WIN-FS01
Copy-Item -Path C:\Temp\File1.txt -ToSession $session -Destination 'C:\Temp'
相关文章
使用 PowerShell 过滤文件和文件夹
发布时间:2024/02/05 浏览次数:195 分类:编程语言
-
本文将讨论 PowerShell Get-ChildItem cmdlet,我们将使用它来获取目录中的所有项目并利用其过滤器开关参数。在某些情况下,我们需要检查文件是否存在于特定位置或目录中。
从 PowerShell 中的文件名中删除路径和扩展名
发布时间:2024/02/05 浏览次数:86 分类:编程语言
-
本教程将介绍在 PowerShell 中从文件名中删除路径和扩展名的不同方法。PowerShell 支持处理系统中的各种文件操作。你可以在 PowerShell 中执行创建、复制、移动、重命名、编辑、删除和查看文件等
使用 PowerShell 连接文件
发布时间:2024/02/05 浏览次数:159 分类:编程语言
-
本教程将教你使用 PowerShell 连接文件。PowerShell 允许你执行不同的文件操作,例如创建、复制、移动、删除、查看和重命名文件。
使用 PowerShell 从路径中提取文件名
发布时间:2024/02/05 浏览次数:52 分类:编程语言
-
本教程将教你如何使用 PowerShell 从路径中提取文件名。文件路径告诉文件在系统上的位置。在 PowerShell 中处理文件时,你可能只需要从路径中获取文件名。
使用 PowerShell 从计算机存储中删除证书
发布时间:2024/02/05 浏览次数:200 分类:编程语言
-
本教程将教你使用 PowerShell 从证书存储中删除证书。在 Windows 操作系统中,证书存储在计算机本地的证书存储中。它包含不同认证机构颁发的各种证书。
在 PowerShell 中清除变量内容
发布时间:2024/02/05 浏览次数:69 分类:编程语言
-
本教程将教你在 PowerShell 中清除变量内容。变量是值的存储位置。你可以将所有类型的值存储在 PowerShell 变量中。
PowerShell 中的空变量
发布时间:2024/02/05 浏览次数:64 分类:编程语言
-
本文讨论了 null 变量、在 PowerShell 中以不同语法使用 null 变量的影响以及检查 null 值的方法。PowerShell 处理值为 null 的 $Null 对象,并且某些命令需要一些输出才能生成。
PowerShell 中的管道变量
发布时间:2024/02/05 浏览次数:77 分类:编程语言
-
本文将向我们展示如何通过使用 PowerShell 的管道变量在 Windows PowerShell 中使用相同的概念和技术。我们通常使用 this 变量或关键字来表示各种编程语言中表达式中出现的最后一个对象。
使用 PowerShell 测试变量的数据类型
发布时间:2024/02/05 浏览次数:104 分类:编程语言
-
本文将讨论如何处理可变数据类型不匹配的几种方法,以及如何使用 PowerShell 正确纠正它们。我们通常使用的 PowerShell 中的一种技术是获取用户输入并将其存储在变量中。