首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PowerShell -将爷爷文件夹名添加到文件名

PowerShell -将爷爷文件夹名添加到文件名
EN

Stack Overflow用户
提问于 2014-02-26 21:11:27
回答 2查看 2.1K关注 0票数 3

我在PS脚本方面还是很新的,所以我所做的大部分工作都是从例子中得到的。我现在要做的是搜索一个目录中的所有文件夹,然后重命名它们,将祖父母文件夹的名称添加到文件名中。例如:

c:\export\123\notes\abc.pdf将重命名为c:\export\123\notes\123_abc.pdf

脚本的其余部分工作正常,使用GhostScript将其转换为TIF并将其移动到另一台服务器。问题是所有的PDF都是类似的,但是'123‘文件夹对于文档来说是唯一的。下面是我努力拼凑起来的东西:

代码语言:javascript
运行
复制
Get-ChildItem 'c:\export\' -Recurse *.pdf |
  ForEach-Object {
  $parent = $_.Parent
  $grandparent = $parent.Parent

  Rename-Item -NewName {$_.$grandparent + "_" + $_.Name}
  }

该脚本正在向'-NewName‘参数抛出一个错误,我已经尝试删除该参数,但这不起作用。我试图复制将父文件夹添加到文件名中的代码,但我似乎无法找到爷爷文件夹名并将名称添加到文件中。

EN

Stack Overflow用户

发布于 2014-02-26 22:04:18

在PowerShell v3和更新版本上,您可以使用项的Parent属性:

代码语言:javascript
运行
复制
Get-ChildItem 'c:\export\' -Recurse *.pdf | % {
  Rename-Item -NewName {$_.Parent.Parent.Name + "_" + $_.Name}
}
票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22053364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档