เราแจกจ่าย lib แบบคงที่ใน Linux ทั้งในเวอร์ชัน 64 บิตและ 32 บิต เมื่อแก้ไขปัญหาลูกค้าฉันต้องการให้เชลล์สคริปต์การวินิจฉัยของฉันกำจัดปัญหาอย่างรวดเร็วโดยการตรวจสอบไฟล์. a archive เพื่อตรวจสอบว่าเป็น 32 หรือ 64 บิต วิธีการที่เกิดขึ้นกับฉันน้อยกว่าที่หรูหรา:
แยกสมาชิก. o และถามคำสั่ง "ไฟล์" (เช่น ELF 32 บิตเป็นต้น)
เริ่มต้นรวมสมาชิกจำลองที่เข้ารหัสเพื่อระบุเช่น 32bit.o / 64bit.o และใช้ "ar -t" เพื่อตรวจสอบ
ฉันได้ลองใช้ "strings xyz.a | grep 32" แล้ว แต่มันใช้ได้ไม่ดีในเวอร์ชันต่างๆ ไม่ใช่ปัญหาอกหัก แต่ถ้าคุณรู้วิธีแก้ปัญหาที่สวยงามฉันก็อยากจะรู้