यदि विंडोज का वर्तमान संस्करण 32-बिट या 64-बिट कमांड लाइन से है तो मैं कैसे निर्धारित कर सकता हूं? [डुप्लिकेट]


26

ओएस 32-बिट संस्करण या 64-बिट विंडोज चला रहा है या नहीं, यह जानने के लिए कमांड लाइन क्या है?


किस भाषा में?!
एलिक्स एक्सल

@AlixAxel, अच्छी तरह से उन्होंने कहा कि कमांड-लाइन , इसलिए शायद, अगर कुछ भी, बैच।
सिनटेक

जवाबों:


33

आप इसे WMI के माध्यम से प्राप्त कर सकते हैं:

wmic OS get OSArchitecture

मेरे सिस्टम पर उदाहरण:

C:\>wmic OS get OSArchitecture
OSArchitecture
32-bit

मुझे यह उत्तर पसंद है (मुझे कुछ WMI कंसोल सीखना होगा :)), लेकिन मैं इसे कीस्ट्रोक्स के लिए "systeminfo" देना चाहूंगा। ;)
ᴇcʜιᴇ007

XP?
Synetech

18

कमांड लाइन:

systeminfo | findstr /I type:

उदाहरण आउटपुट:

सिस्टम प्रकार: X86- आधारित पीसी

X86 इस उदाहरण में 32-बिट सिस्टम को इंगित करता है।

( /I पैरामीटर केस-असंवेदनशील खोज को इंगित करता है )


मैंने आपको कीस्ट्रोक्स के लिए एक बिंदु दिया, और फिर आपने इसे लंबा कर दिया।
हेहे

यह मेरा जवाब नहीं है: पी
जॉन टी

2
लेकिन "X86- आधारित पीसी" OSArchitecture 32-बिट के समान है? आप x64 प्रोसेसर पर 32-बिट विन XP चला सकते हैं।
माइकल कारन

सावधान रहें यदि आपकी ओएस भाषा जर्मन है (या शायद किसी अन्य के अलावा)! मुझे systeminfo | findstr /I typ:पूरी प्रविष्टि के रूप में बदलना होगाSystemtyp: x64-based PC
CeOnSql

systeminfo | findstr /C:"System Type"यह भी एक ही जानकारी को पुनः प्राप्त करता है, लेकिन मुझे लगता है कि अब पाठ इतना कम पसंद किया जाता है।
अभिजीत

13

मैं यहाँ किसी अन्य पोस्ट का उत्तर संलग्न नहीं कर सकता। का परिणाम पिप करना systeminfo- समय में काफी अच्छी राशि ले रहा है और कंसोल को लिखता है ताकि कमांड फाइलों (बैच स्क्रिप्ट - किसी भी तरह आप उन्हें बी-) कहना पसंद न करें।)

यहां तक ​​कि findstr- यह विंडोज़ के अन्य भाषा संस्करण पर ऐसा नहीं लगता है। एक केंद्रीय यूरोपीय भाषा win7 ओएस पर यह भी लौटता है ... "X86- आधारित" ... परिणाम पर लेकिन फिर "प्रकार" की तलाश में कुछ और थे। मुझे यकीन नहीं है कि यह ओएस के अन्य भाषा रूपों पर भिन्न हो सकता है।

संभवतः "विकी" विधि सबसे विश्वसनीय है - यह सीधे ओएस से पूछती है।

अन्य संभव त्वरित समाधान एक चर (कम से कम मुझ पर win7 पर काम कर रहे) की जांच करने के लिए हो सकता है।

echo %PROCESSOR_ARCHITECTURE%

ठीक है - यह याद करने के लिए काफी लंबा है लेकिन संभव है कि set | findstr ARCHइसे याद किया जा सकता है।

ज़रूर - कुछ सिस्टम चर को संशोधित कर सकते हैं ताकि विश्वसनीय से अधिक न हो wmic। लेकिन जल्दी इस्तेमाल किया जा सकता है।

मुझे उम्मीद है कि मैं किसी की मदद कर सकता हूं।


मुझे यकीन नहीं था कि इको कमांड मेरे XP बॉक्स पर काम करेगा क्योंकि मैंने इस पर्यावरण चर को पहले कभी नहीं देखा है (शायद इसलिए कि मैंने इसके लिए कभी नहीं देखा है), लेकिन यह करता है। एक सरल समाधान के लिए +1।
Music2myear

11

विंडोज के तहत प्रोसेसर आर्किटेक्चर की जांच करने के कई तरीके हैं:

  • कम से कम विंडोज 2000 और ऊपर में प्रोसेसर आर्किटेक्चर की जांच करने के लिए सबसे तेज़, सबसे आसान और सबसे संगत तरीका PROCESSOR_ARCHITECTURE पर्यावरण चर की जांच करना है :

    echo %PROCESSOR_ARCHITECTURE%

  • हालाँकि, यह अलग-अलग परिणाम दे सकता है, जिस पर कमांड-प्रॉम्प्ट को खोलने के तरीके पर निर्भर करता है। WoW64 के कारण "अप्रत्याशित परिणाम" प्राप्त करने से बचने के लिए , आप इसे सीधे रजिस्ट्री से पढ़ सकते हैं (Microsoft ने कुंजी में दो टाइपो से कम नहीं बनाया ):

    reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE

  • Microsoft रजिस्ट्री से हार्डवेयर जानकारी संग्रह पढ़ने का भी सुझाव देता है:

    reg query "HKLM\Hardware\Description\System\CentralProcessor\0" /v Identifier

  • आप Program Filesनिर्देशिका के x86 संस्करण (या पर्यावरण चर जो इसे इंगित करते हैं) के अस्तित्व की जांच कर सकते हैं क्योंकि यह केवल 64-बिट सिस्टम पर मौजूद होगा। PROCESSOR_ARCHITECTUREचर के विपरीत , यह उस तरीके पर निर्भर नहीं है, जो कमांड प्रॉम्प्ट को चलाए जाने के बाद से मौजूद है (या नहीं) इस बात की परवाह किए बिना कि प्रॉम्प्ट को कैसे खोला जाता है:

    • ::via env-var
      if not defined ProgramFiles(x86) echo 32-bit

    • ::via file-system
      if not exist "%systemdrive%\Program Files (x86)" echo 32-bit

इन विधियों को एक एकल-बैच-फ़ाइल (जैसे cpuinfo.bat) में जोड़ा जा सकता है और अन्य कार्यक्रमों या रूपरेखाओं का सहारा लेने की आवश्यकता के बिना एक मानक विंडोज एनटी कमांड-प्रॉम्प्ट से सिस्टम की जांच करने के लिए एक अच्छा, बिजली का तेज़ तरीका प्रदान करता है।

नीचे दी गई बैच-फ़ाइल को 32-बिट और इंटेल 64-बिट सिस्टम पर परीक्षण किया गया था (कृपया AMD64 पर परीक्षण करें), <1 1 में सही परिणाम दे रहा है:

परीक्षण के परिणाम

@echo off

echo PROCESSOR_ARCHITECTURE var:
echo %PROCESSOR_ARCHITECTURE% | find /i "x86" > nul
if %errorlevel%==0 (
    echo   32-bit
) else (
    echo   64-bit
)
echo.

echo PROCESSOR_ARCHITECTURE reg:
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE | find /i "x86" > nul
if %errorlevel%==0 (
    echo   32-bit
) else (
    echo   64-bit
)
echo.

echo CentralProcessor reg:
reg query "HKLM\Hardware\Description\System\CentralProcessor\0" | find /i "x86" > nul
if %errorlevel%==0 (
    echo   32-bit
) else (
    echo   64-bit
)
echo.

echo ProgramFiles(x86) var:
if not defined ProgramFiles(x86) (
    echo   32-bit
) else (
    echo   64-bit
)
echo.

echo ProgramFiles(x86) dir:
if not exist "%systemdrive%\Program Files (x86)" (
    echo   32-bit
) else (
    echo   64-bit
)
echo.

5

मुझे OSArchitectureसंपत्ति नहीं मिली (जैसा कि 'फोएबस के जवाब के अनुसार) इसलिए मैं इसके बजाय SystemTypeसंपत्ति का उपयोग करने का सुझाव दूंगा ComputerSystem

wmic computersystem get systemtypeकमांड प्रॉम्प्ट से कमांड चलाना देता है

C:\Windows\system32>wmic computersystem get systemtype  

SystemType x64-based PC

4

नियमित कमांड लाइन: wmic OS get OSArchitecture (IIRC)

शक्ति कोशिका: (gwmi win32_computersystem).SystemType


1
मैं Invalid QueryXP में मिलता हूं ।
सिनटेक

1

यदि आप विंडोज़ ओएस की बात कर रहे हैं, तो आप WMI के साथ vbscript का उपयोग कर सकते हैं

strComputer = "."    
Set objWMIService = GetObject("winmgmts{impersonationLevel=impersonate,authenticationLevel=Pkt}!\\" & strComputer & "\root\cimv2")    
Set colSettings = objWMIService.ExecQuery("SELECT * FROM Win32_Processor")

For Each objProcessor In colSettings
Wscript.Echo "System Type: " & objProcessor.Architecture
Wscript.Echo "Processor: " & objProcessor.Description
Wscript.Echo "Address Width: "& objProcessor.AddressWidth
Next

1

आप "सिस्टम सूचना" का उपयोग करके वह जानकारी पा सकते हैं

स्टार्ट-> रन -> winmsd.exe

"सिस्टम सारांश" / सिस्टम प्रकार के तहत आप ओएस संस्करण पा सकते हैं

X64 -> 64 बिट
X86 -> 32 बिट

GUI में जॉनटी का जवाब;)


1

स्टार्ट »रन पर जाएं और फिर टाइप करें cmd। अब आप कमांड प्रॉम्प्ट में होंगे। वहां आप टाइप करें systeminfoऔर फिर एंटर दबाएं। आपके सिस्टम की सभी जानकारी प्राप्त करने में कुछ सेकंड लगते हैं। आप प्रोसेसर डेटा भी पा सकते हैं।

 Processor(s):              1 Processor(s) Installed.
                           [01]: x86 Family 15 Model 4 Stepping 10 GenuineIntel
  • x86 परिवार का मतलब है, आपका प्रोसेसर 32-बिट है।
  • x64 परिवार का मतलब है, आपका प्रोसेसर 64-बिट है।

C: \ Documents and Settings \ mr85464> systeminfo

OS Name:                   Microsoft Windows XP Professional
OS Version:                5.1.2600 Service Pack 3 Build 2600
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Member Workstation
OS Build Type:             Multiprocessor Free
Product ID:                76487-640-3658033-23932
Original Install Date:     3/16/2012, 2:03:44 PM
System Up Time:            5 Days, 21 Hours, 35 Minutes, 51 Seconds
System Manufacturer:       Dell Inc.
System Model:              OptiPlex 210L
System type:               X86-based PC
Processor(s):              1 Processor(s) Installed.
                           [01]: x86 Family 15 Model 4 Stepping 10 GenuineIntel
~2992 Mhz

2
वास्तव में कुछ सेकंड लेता है! और इसे फिर से चलाने से मदद नहीं मिलेगी क्योंकि यह जानकारी को कैश नहीं करता है। इसके अलावा, विंडोज अपडेट आर्किटेक्चर के बारे में इस भाग का कारण बनता है कि वह ऑफ-स्क्रीन को जल्दी से स्क्रॉल कर सके, इसलिए जब तक कि आपके पास एक बड़ा बफर न हो, आपको इसमें पाइप करने की आवश्यकता होती है more
सिनटेक

0

सरल कोड जिसका मैंने उपयोग किया:

:arch
set p | findstr /i AMD64 > nul
if not errorlevel 1 goto no64
goto eof
:no64
code to execute
:eof
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.