如何使用 PowerShell 复制特定扩展名的文件?
要使用PowerShell使用特定文件扩展名复制文件,我们可以使用Copy-Item命令。
下面的命令将仅将.ps1文件从源复制到目标。
例如,
PS C:\> Copy-Item -Path C:\Temp -Recurse -Filter *.ps1 -Destination C:\Temp1\ -Verbose
如果C:\Temp1不存在,它将创建目标文件夹,然后复制文件的内容,但此命令的问题是它也会复制没有.ps1文件的子文件夹。
所以要复制没有空目录和特定文件扩展名的相同文件夹结构,我们可以编写代码来检查复制后目录的大小,如果文件夹为空,则删除,但这将是一个漫长的过程。
我们可以使用xCopy或RoboCopy命令来克服上述问题。
PS C:\> robocopy c:\temp c:\temp1 "*.ps1" /s
上面的命令会将扩展名为.ps1的文件从C:\temp复制到C:\temp1,而没有空文件夹。