欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Shell脚本判断Linux系统是32位还是64位的几种方法分享

程序员文章站 2022-06-13 17:19:29
一行就能搞定,输出32或者64。 可以用“getconf word_bit”和“getconf long_bit”获得word和long的位数,64位系统中应该分别得到3...

一行就能搞定,输出32或者64。
可以用“getconf word_bit”和“getconf long_bit”获得word和long的位数,64位系统中应该分别得到32和64。
参考代码如下:

复制代码 代码如下:

ldconfig
if [ $(getconf word_bit) = '32' ] && [ $(getconf long_bit) = '64' ] ; then
    ln -s /usr/local/mysql/lib/mysql /usr/lib64/mysql
else
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
fi

其它方法一:执行命令 file /sbin/init

复制代码 代码如下:

[root@localhost jianbao]# file /sbin/init
/sbin/init: elf 32-bit lsb shared object, intel 80386, version 1 (sysv), dynamically linked (uses shared libs), for gnu/linux 2.6.18, stripped

即是32位的 linux, 若是64位的, 显示的是 64-bit 。
例如,在另一台 64 位机器运行的结果:

复制代码 代码如下:

[root@edunosql ~]# file /sbin/init
/sbin/init: elf 64-bit lsb shared object, x86-64, version 1 (sysv), dynamically linked (uses shared libs), for gnu/linux 2.6.18, stripped

方法二:uname -a

32位:linux localhost.localdomain 2.6.32-431.17.1.el6.i686 #1 smp wed may 7 20:52:21 utc 2014 i686 i686 i386 gnu/linux

64位:linux demolinux 2.6.32-431.11.2.el6.x86_64 #1 smp tue mar 25 19:59:55 utc 2014 x86_64 x86_64 x86_64 gnu/linux

方法三:使用用“getconf word_bit”和“getconf long_bit”获得 word 和 long 的位数,64位系统中应该分别得到32和64。