在cmd指令看计算机位数,在.cmd中使用Windows命令来测试32位或64位并运行命令
我正在編寫一個腳本,用于查找注冊表值并將該值返回給Windows命令提示符屏幕,并將其添加到.txt文件中。我到了需要測試的位置,看看機器是32位還是64位,這樣我才知道使用哪個命令來查找我在注冊表中需要的值。在.cmd中使用Windows命令來測試32位或64位并運行命令
我要找的線沿線的邏輯是什么我已經寫了下面:
如果32位則(運行此命令) 其他 (運行此命令)
我希望不會有有任何文本文件或此腳本所需的任何其他內容。以下是我到目前為止的代碼。由于注冊表位置是私密的,我將位置更改為一個組成位置。 (注意:我有一個文本文件,這個腳本讀取的是我插入的計算機和服務器的名稱。到目前為止,我的代碼有效,但有2個注冊表查找命令,我顯然沒有得到正確的結果,當它檢查一個32位機器對于一個64位的注冊表位置)
@echo off
Setlocal
::sets the ldt variable to the local date and time in yyyymmdd_hhmmss
for /f "skip=1" %%c in ('wmic os get LocalDateTime') do set ldt=%%c
set ldt=%ldt:~0,8%_%ldt:~8,6%
::searches for computer names in servers.txt and then calls server sub routine. Once it goes back to the for loop it moves onto the next line in servers.txt
for /f %%c in (servers.txt) do (
set server=%%c
call:server
)
pause
goto:eof
--------------------------------------------------------------------
:server
set stamp=%date% at %time%
set DateTime=%stamp%
::Tests for a good ping, if no ping then move onto next machine
ping -n 1 -w 250 %server% > nul
if %errorlevel% NEQ 0 (
ECHO No Ping on %server%
ECHO No Ping on %server% >>AuditScript_%ldt%.txt
goto:eof
)
call:screen
call:log
goto:eof
--------------------------------------------------------------------
:screen
echo.
echo Computer name: %server%
reg query "\\%server%\HKLM\SOFTWARE\Registry Folder1\Information\" /V "Datavalue" | FIND "Datavalue"
reg query "\\%server%\HKLM\SOFTWARE\Wow6432Node\Registry Folder1\Information" /V "Datavalue" | FIND "Datavalue"
echo.
goto:eof
--------------------------------------------------------------------
:log
echo. >>AuditScript_%ldt%.txt
echo Registry value for %server% on %stamp% >>AuditScript_%ldt%.txt
reg query "\\%server%\HKLM\SOFTWARE\Registry Folder1\Information\" /V "Datavalue" | FIND "Datavalue" >>AuditScript_%ldt%.txt
reg query "\\%server%\HKLM\SOFTWARE\Wow6432Node\Registry Folder1\Information" /V "Datavalue" | FIND "Datavalue" >>AuditScript_%ldt%.txt
echo. >>AuditScript_%ldt%.txt
goto:eof
--------------------------------------------------------------------
2012-09-11
Patrick
+1
你很可能使用'PROCESSOR_ARCHITECTURE' :,作為解釋這里:http://blogs.msdn.com/b/david.wang/archive/2006/03/26/howto-detect-process-bitness.aspx。根據http://social.msdn.microsoft.com/Forums/en/netfx64bit/thread/5a316848-1ec3-4d01-a395-7c5b17756239,相應的注冊表項(因此您可以遠程查詢它)是:“HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment \ PROCESSOR_ARCHITECTURE“ –
+0
仍然遇到麻煩試圖讓這與Windows命令一起工作,但仍然嘗試。感謝您的建議 –
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的在cmd指令看计算机位数,在.cmd中使用Windows命令来测试32位或64位并运行命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 河南acret计算机报名,Acret,
- 下一篇: 计算机录入速度标准,怎么提高电脑录入速度