यदि मेरा सॉफ़्टवेयर 32-बिट या 64-बिट है तो कैसे जांचें


30

मैं जांचना चाहता हूं कि मेरा सॉफ्टवेयर 64 बिट या 32 बिट (ओएस नहीं) है या नहीं। यह सॉफ़्टवेयर एक निष्पादन योग्य फ़ाइल है, और जब मैं इसकी जांच करता हूं, तो 64-बिट या 32-बिट होने पर कोई जानकारी नहीं दी जाती है।

यदि मेरा सॉफ़्टवेयर 64-बिट या 32-बिट है तो मैं कैसे जांच करूं?

जवाबों:


39

आप यह fileजांचने के लिए कमांड का उपयोग कर सकते हैं कि किस प्रारूप में निष्पादन योग्य है। उदाहरण के लिए:

file /usr/bin/gedit
/usr/bin/gedit: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x5a388215eb6f60b420fc3b6d68ec52d563071f84, stripped

4

यह सरल कमांड आपको दिखाएगा कि निष्पादन योग्य फ़ाइल 32 बिट (i386) है या 64 बिट (amd64)।

वाक्य - विन्यास:

apt-cache show $(dpkg -S /path/to/the/file | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -

उदाहरण:

$ apt-cache show $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/Architecture:/ {print $2}' -
amd64

स्पष्टीकरण:

dpkg -S कमांड उस पैकेज को पकड़ लेता है जिसमें फ़ाइल वास्तव में संबंधित है।apt-cache show packageकमांड पैकेज के बारे में विवरण दिखाएगा। उस विवरण के अनुसार, awk केवल आर्किटेक्चर भाग को पकड़ता है और इसे स्टडआउट पर पुनर्निर्देशित करता है।

या

आप इस कमांड को भी आजमा सकते हैं,

$ dpkg -l $(dpkg -S /usr/bin/gedit | awk -F ':' '{print $1 }') | awk '/ii/ {print $4}'
amd64

1
cut -d: -f1यहां छोटा होगा, और ध्यान दें कि यह केवल इंस्टॉल किए गए पैकेजों के लिए काम करता है, न कि आपके घर के फ़ोल्डर में कुछ यादृच्छिक फ़ाइल। शायद xargs -rयह अधिक उपयुक्त है जब dpkg -Sकमान खाली हो जाती है।
लेकेनस्टाइन

यह केवल तभी काम करता है जब सॉफ्टवेयर apt / dpkg से आता है, जबकि दूसरा उत्तर हमेशा काम करता है चाहे वह कहाँ से आया हो।
जोसेफ सिबल-रिनेटेट मोनिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.