Get-ChildItem,但没有文件夹(完成此部分),仅某些文件类型

时间:2019-08-30 12:38:02

标签: powershell

我正在尝试获取一个Powershell脚本,该脚本将从一个文件夹(及其子文件夹)中移走所有文件,并将所有文件放到另一个文件夹中。到目前为止,我已经可以正常工作了,但我也希望它仅移动特定文件类型(.mp3)。

*这是我第一次使用powershell玩,所以对我来说有点有点啊:D)

我尝试过

-and (
$_.extension -eq ".mp3" )

在哪里对象下 这使它可以完全按照以前的方式做-将其复制到其他非.mp3上。

-include "*.JPG"在顶部-Recurse之前。 Powershell终端打开,但屏幕上没有任何弹出窗口,并且立即关闭。

这是我目前正在从事的工作:

Get-ChildItem "E:\Downloads\*" -Recurse |
  Where-Object { 
  $_.PSIsContainer -eq $true

  } |
  Foreach-Object { robocopy $_.FullName "E:\Music\Compressed" }

1 个答案:

答案 0 :(得分:1)

您需要做的就是这个

Get-ChildItem "E:\Downloads" -Recurse -File -Filter "*.mp3" | foreach { copy $_.FullName "E:\Music\Compressed" }

解释一下:

  • -File告诉它仅返回文件
  • -Filter "*.mp3"告诉它仅抓取.mp3文件
  • copy很好,不需要自动复制