gpt4 book ai didi

perl - 如何检测 Perl 中的操作系统?

转载 作者:行者123 更新时间:2023-12-03 01:16:05 26 4
gpt4 key购买 nike

我在 Mac、Windows 和 Ubuntu 上都有 Perl。我如何从脚本中辨别哪个是哪个?

编辑:有人问我在做什么。它是一个脚本,是我们跨平台构建系统的一部分。该脚本递归目录并找出要构建的文件。有些文件是特定于平台的,因此,在 Linux 上我不想构建以 _win.cpp 等结尾的文件。

最佳答案

检查$^O包含操作系统名称的变量:

print "$^O\n";

在 Linux 上打印 linux,在 Windows 上打印 MSWin32

您还可以通过名称 $OSNAME 引用此变量如果您使用English模块:

use English qw' -no_match_vars ';
print "$OSNAME\n";

根据perlport , $^O在 Mac OS X 上将是 darwin

<小时/>

您还可以使用Config核心模块,它可以提供相同的信息(以及更多):

use Config;

print "$Config{osname}\n";
print "$Config{archname}\n";

在我的 Ubuntu 机器上打印:

linux
i486-linux-gnu-thread-multi

请注意,此信息基于 Perl 构建的系统,该系统不一定是 Perl 当前运行的系统(对于 $^O$OSNAME 也是如此);操作系统可能不会有所不同,但某些信息(例如架构名称)很可能会有所不同。

关于perl - 如何检测 Perl 中的操作系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/334686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com