我对PowerShell有点新意,所以这可能是一个基本问题。
我写了一个小的单行代码来删除目录中每个文本文件顶部的前97行。
该脚本适用于删除行,但最后创建的新文件没有我期望的名称。这是脚本:
Get-ChildItem | ForEach-Object {Get-Content $_.PSPath | Select -Skip 97 | Set-Content "Edited-$_.PSChildName" }
调用原始文件: file.txt的 我希望调用的新文件是: 编辑-file.txt的 该文件实际上是: 编辑的-file.txt.PSChildName
知道我做错了吗?
答案 0 :(得分:4)
我想你想要Set-Content "Edited-$($_.PSChildName)"
。 $()
允许您将表达式插入到字符串中,例如“abc $(2 + 2)”返回字符串“abc4”。