PowerShell 7.2读取TXT数学表达式计算结果导出到文件问题咨询
PowerShell 计算文件内数学表达式的解决方案
要计算字符串形式的四则运算结果,可直接使用PowerShell内置的Invoke-Expression命令实现,以下是可直接运行的完整代码:
# 读取源文件内容 $sourcePath = "C:\Users\user1\Desktop\txt1.txt" $outputPath = "C:\Users\user1\Desktop\txt2.txt" $outputContent = @() foreach ($line in Get-Content $sourcePath) { # 拆分变量名和表达式,去除表达式中的空格 $varName = $line.Split('=')[0].Trim() $expression = $line.Split('=')[1].Trim().Replace(' ', '') # 计算表达式结果 $calcResult = Invoke-Expression $expression # 拼接输出行格式 $outputContent += "$varName = $calcResult" } # 将结果写入目标文件 $outputContent | Out-File $outputPath -Encoding UTF8
运行上述代码后,txt2.txt中会生成如下内容:
x1 = 5 x2 = 2 x3 = -3
如果担心Invoke-Expression存在代码注入风险,可将计算行替换为更安全的脚本块调用方式:
$calcResult = [scriptblock]::Create($expression).Invoke()[0]
内容的提问来源于stack exchange,提问作者Pante
相关产品推荐
相关产品推荐

