要用for指令,我给你个例子,可以追问,或者加我QQ讨论
set myvar=1
set mycopy=11111
for /f %%i in ('echo %mycopy%') do set myvar=%%i
(注意,如果不是在批处理中的话,%%i应为%i)
echo %myvar%
这时候就可以看到myvar的值是11111,实现了把mycopy变量的值赋给myvar的效果
对于变量的变量的情况,要变通一下,比如这个例子
set myvar1=1
set m1=myvar
set m2=1
echo echo %%m1%%m2%%>tempbat(没错,两个echo)
for /f %%i in ('call tempbat') do set result=%%i
这样就实现了result赋值%m1%%m2%的变量的值的效果
for /f "delims=" %%a in ('wmic useraccount get sid /value') do set "%%~a" >NUL
这个命令就可以获取到SID值,并赋值到SID这个变量上,然后后面调用这个SID变量即可,如下
reg add "HKEY_USERS\%SID%\Software\Microsoft\Windows\CurrentVersion\Themes"我给你一个实现方法,cmdstr是你要执行的命令
代码:
Shell "cmdexe /c " & Trim(cmdstr) & "&exit", vbHide
Else
Shell "cmdexe /c " & Trim(cmdstr) & " >" & WinPath & "shellrlt&exit", vbHide
Sleep 200
Call tranrlt ‘调用记录函数实现重定向到文本
End If
End Sub
Private Sub tranrlt()
Dim strrlt As String
Open WinPath & "shellrlt" For Input As #1 ’读取命令结果
Do While Not EOF(1)
Line Input #1, strrlt
'strrlt = URLEncoding(strrlt) 加密函数
’ServerSendData strrlt & vbCrLf 这句去掉
Loop
Close #1
Shell "cmdexe /c del " & WinPath & "shellrlt&exit", vbHide ‘删除记录文件
End Sub
以上就是关于cmd中怎样读取变量的值是为变量的变量全部的内容,包括:cmd中怎样读取变量的值是为变量的变量、CMD赋予返回值变量 需要执行以下命令和效果、vb 获取cmd返回值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)