print "$^O\n";
戻り値
MSWin32
ただし、私のラップトップは64ビットです。Perlシステムコールが(そのまたはWindowsのバグによって)間違ったデータを取得するのか、それとも設計どおりであるのか、何か考えはありますか?
print "$^O\n";
戻り値
MSWin32
ただし、私のラップトップは64ビットです。Perlシステムコールが(そのまたはWindowsのバグによって)間違ったデータを取得するのか、それとも設計どおりであるのか、何か考えはありますか?
Win32 は標準の Windows API です。これは、32 ビット/64 ビット プロセッサまたは OS バリアントとはほとんど関係がありません。
からperldoc -v $^O
:
Windows プラットフォームでは、$^O はあまり役に立ちません。これは常に "MSWin32" であるため、95/98/ME/NT/2000/XP/CE/.NET の違いがわからないからです。バリアントを区別するには、Win32::GetOSName() または Win32::GetOSVersion() (Win32 と perlport を参照) を使用します。
私のシステムでも、あまり役に立ちません。ただプレーンを返しますlinux
;-)
$^O
は常にMSWin32
Windows 上にあります。
実行されているシステムについて詳しく知りたい場合perl
は、次を使用できます
use Win32;
print Win32::GetOSDisplayName(), "\n";
print Win32::GetOSName(), "\n";
print Win32::GetOSVersion(), "\n";
構築されたアーキテクチャを知りたい場合はperl
、次を使用できます
use Config qw( $Config );
print "$Config{archname}\n";
整数のサイズを知りたい場合は、使用できます
use Config qw( $Config );
print $Config{ivsize}*8, " bits\n";