Powershell 更改文件中的行
我正在尝试编写一个PowerShell脚本,该脚本执行以下操作:Powershell 更改文件中的行,powershell,Powershell,我正在尝试编写一个PowerShell脚本,该脚本执行以下操作: 打开一个文本文件 查找与以下模式匹配的行: public interface $A extends InterfaceName 并将其更改为: public interface $A extends InterfaceName<$A> 公共接口$A扩展了接口名 保存文件 您可以使用Get Content从文件中读取数据,使用Foreach Object和-replace搜索匹配项并将其替换,然后使用Set Con
public interface $A extends InterfaceName
并将其更改为:
public interface $A extends InterfaceName<$A>
公共接口$A扩展了接口名
您可以使用
Get Content
从文件中读取数据,使用Foreach Object
和-replace
搜索匹配项并将其替换,然后使用Set Content
将其写回文件。正则表达式可用于添加所需的代码:
# Get the content from a file
Get-Content 'C:\path_to_your_file.txt' |
# Get replace each line if it matches the pattern
ForEach-Object {$_ -replace "(public interface (\S+) extends InterfaceName)", ' $1<$2>' } |
# Save the changes back to the file
Set-Content 'C:\path_to_your_file.txt'
#从文件中获取内容
获取内容“C:\path_to_your_file.txt”|
#获取并替换与模式匹配的每一行
ForEach对象{$\替换“(公共接口(\S+)扩展接口名)”,“$1}|
#将更改保存回文件
将内容“C:\path\u设置为\u your\u file.txt”
那么唯一的区别就是行的开头有一个空格?$A代表什么?没有空格的文本?更重要的是,您是否尝试过一些东西?文件中是否有$A
文本?PowerShell变量?任意接口名称的通用占位符?我的错,我更改了问题