首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PowerShell将文本行添加到多个文件

PowerShell将文本行添加到多个文件
EN

Stack Overflow用户
提问于 2012-06-23 03:33:56
回答 3查看 3.4K关注 0票数 2

Powershell体验了3个小时...

场景:需要在多个文件夹和子文件夹中的多个ASPX文件的顶部添加一行代码

这个是可能的吗?

我已经知道了如何搜索这些文件,但是添加这行代码是我遇到麻烦的地方。这就是我所拥有的,它不能工作

代码语言:javascript
复制
Get-ChildItem C:\domain_3 -recurse -include "*.aspx" |
Foreach-Object { 
    Add-Content -Path $targetFile -Value "<%@ Page Language="C#" Inherits="LandingPages.LandingPage" %>"; 
}

谢谢大家

EN

回答 3

Stack Overflow用户

发布于 2012-06-23 06:00:11

代码语言:javascript
复制
$header=@"
"<%@ Page Language="C#" Inherits="LandingPages.LandingPage" %>
"@

Get-ChildItem C:\domain_3 -Recurse -Filter *.aspx | Foreach-Object { 
    $header`n" + (Get-Content $_.FullName | Out-String) | Set-Content -Path $_.FullName
}
票数 6
EN

Stack Overflow用户

发布于 2012-06-23 03:52:21

试试这个(我现在不能测试)

创建一个函数:

代码语言:javascript
复制
function Insert-Content ($file) {
BEGIN {
$content = Get-Content $file
}
PROCESS {
$_ | Set-Content $file
}
END {
$content | Add-Content $file
}
}

然后使用它:

代码语言:javascript
复制
(dir c:\domain_3 -r -filter *.txt ) | % { '<%@ Page Language="C#" Inherits="LandingPages.LandingPage" %>' | insert-content $_.fullname }
票数 0
EN

Stack Overflow用户

发布于 2012-06-23 05:04:38

这项工作对编码部分不是很确定

代码语言:javascript
复制
$file="F:\Default2.aspx"
$content = Get-Content $file
$content = "<%@ Page Language=`"C#`" Inherits=`"LandingPages.LandingPage`" %>" + $content;
Set-Content $file $content 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11162939

复制
相关文章

相似问题

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