Powershell在filepath中获取第二个文件夹

时间:2018-01-30 14:08:42

标签: powershell

我是PowerShell的新手,在搜索特定功能的文件夹后,我试图在文件路径中获取第二个文件夹。问题似乎是在使用拆分项时,我有不同级别的文件夹深度。

Get-ChildItem -Path d:\domains -Recurse *.php | Select-Object -Property FullName

所以例如我输出:

  

d:\域\ domain.com \的httpdocs \ WordPress的\可湿性粉剂内容\主题\ twentytwelve \ single.php中
  d:\域\ domain.com \ httpdocs资料\ WordPress的\可湿性粉剂内容\主题\ twentytwelve \ tag.php   d:\域\ domain.com \的httpdocs \ WordPress的\ WP-包括\ canonical.php
  d:\域\ domain2.com \的httpdocs \ WordPress的\可湿性粉剂内容\主题\ twentytwelve \ INC \的自定义元素
  d:\域\ domain2.com \的httpdocs \ WordPress的\可湿性粉剂内容\主题\ twentytwelve \页面模板\前page.php文件
  d:\域\ domain2.com \的httpdocs \ WordPress的\可湿性粉剂内容\主题\ twentytwelve \页面模板\全width.php
  D:\ domains \ domain2.com \ httpdocs \ wordpress \ wp-includes \ canonical.php

我只想搜索第二个文件夹的名称(即domain.com/domain2.com)并输出唯一条目。

非常感谢

1 个答案:

答案 0 :(得分:1)

使用Select-Object -First 1 -Skip 1抓取管道中的第二项:

Get-ChildItem -Directory -Path d:\domains |Select -First 1 -Skip 1 |Get-ChildItem -Recurse *.php |Select-Object -ExpandProperty FullName

在PowerShell 3.0中引入了文件系统提供程序上-Directory的{​​{1}}开关以及Get-ChildItem的{​​{1}}和-First参数。

如果您正在使用PowerShell v2,则可以执行以下操作:

-Skip