PowerShell -将文本文件的内容用引号附加到另一个脚本或文件中的变量?

inb24sb2  于 2023-11-18  发布在  Shell
关注(0)|答案(1)|浏览(135)

我试图base64日志收集器exe和地方base64文本在一个变量在一个单独的脚本解码。
这是我的base64代码

$SourceFile = "C:\Users\Downloads\GrabEventLogs.exe"
$B64File       = "C:\Users\Downloads\GrabEventLogsB64.txt"

[IO.File]::WriteAllBytes($B64File,[char[]][Convert]::ToBase64String([IO.File]::ReadAllBytes($SourceFile)))

字符串
然后我想把“GrabEventLogsB64.txt”的内容添加到另一个脚本顶部的引号中的变量中,就像这样-

### I need to add Base64text here as 
$B64File = "contents of GrabEventLogsB64.txt"


我一直在用cat和bash来解决这个问题,但是我怎么用powershell呢?
因此,基本上,如何获取文本文件$B64File =“C:\Users\Downloads\GrabEventLogsB64.txt”的内容,并将其放在脚本或单独文件中的变量后面。

### I need to add Base64text here as 
$B64File = "contents of GrabEventLogsB64.txt"


谢谢你!

rta7y2nd

rta7y2nd1#

所以你不想只从第二个脚本调用那个txt文件的内容,例如:
第一个月
你想把它插入到那里,这样字符串本身就在你的脚本中了?
我能想到的唯一方法是在第二个脚本中有一个占位符保持器字符串,然后在txt文件和第二个.ps1变量中使用Get-Content,并使用Replace()将保持字符串替换为.txt文件的内容。

### I need to add Base64text here as 
$B64File = "contents of GrabEventLogsB64.txt"

字符串
你就可以得到

$B64File = Get-Content GrabEventLogsB64.txt -Raw -Encoding Byte
$SecondScript = Get-Content MySecondScript.ps1
$SecondScript.Replace("contents of GrabEventLogsB64.txt",$B64File) | Set-Content MySecondScript.ps1 -Force -Encoding Byte


请注意,虽然我怀疑您需要确保使用正确的编码来获得所需的结果,但我不确定我所建议的方法是否可以完成这项工作,因此可能需要进行实验。

相关问题