如何在 PowerShell 中使用 –Recurse 参数复制文件夹内容?


要在 PowerShell 中将文件夹的内容复制到目标文件夹,您需要提供文件夹的源路径和目标路径,但需要确保在源路径后使用通配符 (*) 字符,以便复制整个文件夹内容。

如果您只提供源文件夹而不使用 (*),则只会复制文件夹名称,而不会复制其内容。我们还需要确保源文件夹和目标文件夹都存在。

示例

Copy-Item -Path D:\Temp\ -Destination D:\TempContent -PassThru

输出

当您使用上述命令时,您会看到输出为空,因为没有指定 (*) 字符。

PS C:\WINDOWS\system32> Copy-Item -Path D:\Temp\ -Destination D:\TempContent -PassThru
    Directory: D:\TempContent
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       06-03-2020     10:55                Temp

输出

但是,当您指定 (*) 字符时,文件夹内容就会被复制。

示例

Copy-Item -Path D:\Temp\* -Destination D:\TempContent -PassThru

输出

PS C:\WINDOWS\system32> Copy-Item -Path D:\Temp\* -Destination D:\TempContent -PassThru
    Directory: D:\TempContent
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       06-03-2020     10:56                GPO_backup
d-----       06-03-2020     10:56                LGPO
-a----       27-01-2020     22:21          13962 Alias1
-a----       26-01-2020     19:20          13818 aliases.txt
-a----       07-05-2018     23:00            301 cars.xml
-a----       18-01-2020     18:25             48 delim.txt
-a----       18-01-2020     17:25             14 GetContentExample.txt
-a----       29-12-2017     15:16           4526 healthcheck.htm
-a----       29-12-2017     15:16           4526 healthcheck1.htm
-a----       20-01-2020     12:10        1148809 PowerShellcommands.csv
-a----       17-01-2020     22:04          55190 Processes.txt
-a----       18-01-2020     18:22          27620 ReadC.txt
-ar---       13-01-2020     18:19              0 Readonlyfile.txt
-a----       08-12-2017     10:24          48362 servicereport.htm
-a----       08-12-2017     10:24          48362 servicereport1.htm
-a----       18-01-2020     18:44             22 stream1.txt
-a----       08-12-2017     10:16            393 style.css
-a----       12-12-2017     23:04           1034 tes.htmoutput.htm
-a----       08-12-2017     11:29           7974 Test.xlsx
-a----       25-10-2017     08:13            104 testcsv.csv
-a----       18-01-2020     16:26          27620 testreadC.txt

在上面的示例中,您可能已经注意到还有子文件夹,例如 **LGPO** 和 GPO_backup,但是当子文件夹复制到目标时,它们是空的,并且只会复制父文件夹下的文件。

示例

要复制子文件夹的内容,您需要使用 **–Recurse** 参数。下面给出一个示例。

PS C:\WINDOWS\system32> Get-ChildItem D:\TempContent\LGPO\
    Directory: D:\TempContent\LGPO
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       01-06-2017     03:22         410088 LGPO.exe
-a----       01-06-2017     02:25         638115 LGPO.pdf

更新于:2020年3月12日

15K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告