Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell-在路径中使用通配符搜索特定子文件夹中的文件名_Powershell_Wildcard_Get Childitem - Fatal编程技术网

Powershell-在路径中使用通配符搜索特定子文件夹中的文件名

Powershell-在路径中使用通配符搜索特定子文件夹中的文件名,powershell,wildcard,get-childitem,Powershell,Wildcard,Get Childitem,延长员额 你好 假设我们有以下文件和文件夹配置: C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\level03.txt C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\level03.yml C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\level04.txt C:\temp\FolderLevel01\Fol

延长员额

你好

假设我们有以下文件和文件夹配置:

C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\level03.txt
C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\level03.yml
C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\level04.txt
C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\level04.yml
C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\Contract\contract.txt
C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\Contract\contract.yml
如果“Path”参数中的文件夹树结构正确,则可以检索contract.yml文件:

Get-ChildItem "C:\temp\FolderLevel01\FolderLevel02\FolderLevel03\FolderLevel04\Contract\" -Include "*.yml" -Recurse
Get-ChildItem "C:\temp\FolderLevel01\*\*\*\Contract\" -Include "*.yml" -Recurse
Get-ChildItem "C:\temp\FolderLevel01\*\*\*\Contract\*.yml"
但是如何检索“Contract\*.yml”如果

  • 您事先不知道文件夹树
  • 文件名未知(yml扩展名除外) 你唯一的信息是
  • 文件位于特定文件夹(即合同)中
  • 作为安全扩展名的文件(即.*.yml)
以下命令不起作用:

Get-ChildItem "C:\temp\FolderLevel01\" -Include "Contract\*.yml" -Recurse
分两步考虑:

$folder=(Get-ChildItem .\FolderLevel01\\Contract -Recurse)
$file=(Get-ChildItem ($folder.FullName + '\*.yml'))

是的,谢谢。我也用了两个步骤,但我正在寻找一个不可能的最短命令:-)