使用powershell在符合条件的每行开头添加文本
我试图在每行的开头添加一个文本,该文本适用于使用Powershell的特定条件。 对于eg;使用powershell在包含“12345”的每行开头添加“@”使用powershell在符合条件的每行开头添加文本,powershell,Powershell,我试图在每行的开头添加一个文本,该文本适用于使用Powershell的特定条件。 对于eg;使用powershell在包含“12345”的每行开头添加“@” Line 12345 Line 23456 Line 12345 输出应该是 @Line 12345 Line 23456 @Line 12345 您可以为此使用-replace: (Get-Content file.txt) -replace '.*12345','@$&' | Set-Content file.txt -r
Line 12345
Line 23456
Line 12345
输出应该是
@Line 12345
Line 23456
@Line 12345
您可以为此使用
-replace
:
(Get-Content file.txt) -replace '.*12345','@$&' | Set-Content file.txt
-replace
的第一部分是用于匹配的正则表达式字符串*
是任何字符(
)的零次或多次(*
)。第二部分是替换字符串<代码>@是文字$&
返回匹配的所有内容
有关使用
-replace
替换正则表达式的更多信息,请参阅。您可以使用-replace
执行此操作:
(Get-Content file.txt) -replace '.*12345','@$&' | Set-Content file.txt
-replace
的第一部分是用于匹配的正则表达式字符串*
是任何字符(
)的零次或多次(*
)。第二部分是替换字符串<代码>@是文字$&
返回匹配的所有内容
有关使用
-replace
替换正则表达式的更多信息,请参见?这些是txt文件的行吗?你的代码行?数组元素?如果($line=“line 12345”){$line=“@”+$line}需要循环,可以使用if语句,然后使用for循环。行是什么意思?这些是txt文件的行吗?你的代码行?数组元素?如果($line=“line 12345”){$line=“@”+$line}需要循环,可以使用if语句,然后使用for循环。