我想在文本文件中检查一些信息,然后用它来插入命令。
例如:
有这个文本文件(hello.txt),其中的信息是:
Determining profile based on KDBG search...
Suggested Profile(s) : Win7SP0x86, Win7SP1x86
AS Layer1 : IA32PagedMemoryPae (Kernel AS)
AS Layer2 : FileAddressSpace (E:\KOHMOHOJOJO-PC-20140714-152414.raw)
PAE type : PAE
DTB : 0x185000L
KDBG : 0x82734be8L
Number of Processors : 1
Image Type (Service Pack) : 0
KPCR for CPU 0 : 0x82735c00L
KUSER_SHARED_DATA : 0xffdf0000L
Image date and time : 2014-07-14 15:24:17 UTC+0000
Image local date and time : 2014-07-14 23:24:17 +0800
因此,要继续使用波动率进行分析,用户需要确定其个人资料。
有2个建议的个人资料,但在底部“Image Type (Service Pack) : 0
”,它显示个人资料为Win7SP0x86
而不是Win7SP1x86
。
如何使用这2个重要细节将其选择为正确的配置文件并将其插入命令
vol231.exe -f E:\KOHMOHOJOJO-PC-20140714-152414.raw --profile=Win7SP0x86 pslist > hello2.txt
任何人都可以帮助我吗?提前谢谢!
修改
suggested profile
未修复。根据.raw文件,它可能包含2个以上的建议配置文件。您如何将Image Type (Service Pack) : 0
与suggested profile
匹配?
例如:当它读取时,它会将两个或多个建议的配置文件“存储”到变量中,然后检查建议的配置文件是否为0或1或2等。
希望这可以解释得更好。或者任何合适的方式都是好的。
答案 0 :(得分:2)
@echo off
for /f "tokens=5 delims=: " %%a in ('type hello.txt^| find /i "Image Type (Service Pack)"') do (
set "SP=%%a"
)
for /f "tokens=2 delims=:" %%p in ('type hello.txt^| find /i "Suggested Profile(s)"') do (
set "profiles=%%p"
)
set /a tkn=sp+1
for /f "tokens=%tkn% delims=, " %%s in ("%profiles%") do (
set "profile=%%s"
)
::vol231.exe -f E:\KOHMOHOJOJO-PC-20140714-152414.raw --profile=%profile% pslist > hello2.txt