我想确定Mac OS是32位还是64位。
谁可以为我写下Perl脚本?
答案 0 :(得分:2)
目前尚不清楚你想要什么。
要查找用于perl
的指令集,您可以使用以下内容:
$ perl -V:myarchname
myarchname='x86_64-linux';
(与i686-linux
相对。)
要查找perl
使用的整数的大小,您可以使用以下内容:
$ perl -V:ivsize
ivsize='4';
(与8
相对。)
可以在Perl中访问这些值,如下所示:
use Config qw( %Config );
say $Config{myarchname};
say $Config{ivsize};
答案 1 :(得分:1)
我不是perl程序员,但是如何尝试将1添加到最大32位整数并将其与溢出值相加?如果等于,你就是32位......
答案 2 :(得分:0)
一种可能性是拨打" arch
"。
我刚刚输入的脚本如下所示:
#!/usr/bin/perl -w
$arch=`arch`;
print $arch;
但是,当我输入" arch
"在我的终端命令行,我得到" i386
"的输出。我的Mac Pro塔具有64位功能(有些,如果不是全部,应用程序以64位模式运行),所以我不确定为什么我没有看到" x86_64
&# 34;相反输出。
答案 3 :(得分:0)
您可以检查uname -a
的输出,看看最后是i386
还是x86_64
:
#! /usr/bin/env perl
use strict;
use warnings;
use feature qw(say);
no warnings qw(uninitialized);
if (not -x "/usr/bin/uname") {
say "Can't determine system bit mode: uname command not found";
}
else {
chomp ( my $arch_type = qx(/usr/bin/uname -a) );
if (not $arch_type) {
say "Can't determine system bit mode";
}
elsif ($arch_type =~ /x86_64$/) {
say "System is in 64 bit mode";
}
else {
say "System is in 32 bit mode: $arch_type";
}
}