查找具有文件匹配 1 但不具有文件匹配 2 的目录

查找具有文件匹配 1 但不具有文件匹配 2 的目录

我觉得我应该能够通过简单的谷歌搜索找到这个,但没有成功,所以...基本上和这个问题在 AU但对于 Windows 来说。

我想找到名称包含(例如)0203但的文件不要有一个文件,其名称包括01。我更喜欢一个好的 CLI 命令,但我愿意安装任何低于 Ubuntu(或其他 *nix 发行版)的版本。

例如:

\music\The Irish Roves\Hardstuff\
    01 - All Sing Together.mp3
    02 - Paddy On The Turnpike.mp3
    ...
    \\shouldn't match that folder
\music\Garth Brooks\Ropin' The Wind\
   03 - What She's DOing Now.mp3
   \\but should match this one

答案1

知道该如何做这件事了。

需要 Microsoft 免费程序电源外壳。只需安装它,然后命令是:

命令:

$a = gci path/to/look/at -r | ? {$_.PSIsContainer -eq $True} | ? {$_.GetFiles().Count -ne 0} 
$a = $a | ? {Test-Path($_.fullname+"\*02*")}  | ? {(Test-Path($_.fullname+"\*01*")) -eq $False} 
$a | select FullName

您也可以将其作为一行来完成,但为了更容易阅读,请将其写为多行。

该 cmd 也使用了一些快捷方式;gci=Get-ChildItem?=Where-Objectselect= SelectObject

感谢 arielnmz 为我指明了正确的方向

相关内容