你的 uname 命令输出了什么?

11

简短故事: 我需要编写一个 PHP 脚本,从 uname 中找到正确的操作系统类型(例如: wincewinnt都会返回windows)。请参见此处获取更多信息。

这不应该是社区 Wiki 吗?

是的,但...请参考此处

如何帮助: 如果您的操作系统未在下面列出,请运行此代码并分享您的发现:

<?php
    echo php_uname();
?>

或者,在Unix shell中尝试:

user@host ~ > php -a

php > echo php_uname();

共享结果列表

  • Darwin ... 10.4.0 Darwin内核版本10.4.0:2010年4月23日星期五18:28:53 PDT; root:xnu-1504.7.4〜1/RELEASE_I386 i386
  • Darwin ... 9.8.0 Darwin内核版本9.8.0:2009年7月15日星期三16:55:01 PDT; root:xnu-1228.15.4〜1/RELEASE_I386 i386
  • Windows NT ... 6.1构建7600
  • Linux ... 2.6.24-24-xen#1 SMP Tue Aug 18 18:15:39 UTC 2009 x86_64
  • Linux ... 2.6.34.7-56.fc13.x86_64#1 SMP Wed Sep 15 03:36:55 UTC 2010 x86_64
  • Linux ... 2.6.32-25-generic#44-Ubuntu SMP Fri Sep 17 20:26:08 UTC 2010 i686
  • Windows NT ... 5.1构建2600
  • Windows NT ... 6.0构建6002(Windows Server 2008标准版Service Pack 2)i586
  • Windows NT ... 6.1构建7600((null))i586

有趣的是,即使在特定条件完全匹配的情况下,uname仍会产生不同的结果。


1
@Christian 我建议为此开设聊天室 - 这更适合。可以使用此链接自动创建一个聊天室来讨论此问题:http://chat.stackoverflow.com/questions/3948866/what-does-your-uname-say - Yi Jiang
4
@YiJiang 为什么?这可能是未来几代人有用的信息。 - Pekka
1
sharth - 那仍然产生了混合的结果。 - Christian
1
https://dev59.com/H3RB5IYBdhLWcg3wCjnO - mellowsoon
2
这有点像查看浏览器用户代理字符串。市场上有5-6种流行的浏览器,但有10k个不同的用户代理字符串。 - mellowsoon
显示剩余12条评论
16个回答

6
似乎这是uname的browscap。请随意编辑/更新此列表:
Ubuntu 10.10 32位(i686)
Linux SYSTEM_NAME 2.6.35-22-generic #34-Ubuntu SMP SYSTEM_DATE i686
Ubuntu 10.04 32位,PHP 5.3.2
Linux SYSTEM_NAME 2.6.32-25-generic #44-Ubuntu SMP SySTEM_DATE i686
Ubuntu 10.04 x64
Linux SYSTEM_NAME 2.6.32-25-generic #44-Ubuntu SMP SYSTEM_DATE x86_64t
Ubuntu 13.04 x86_64
Linux SYSTEM_NAME 3.8.0-29-generic #42-Ubuntu SMP SYSTEM_DATE x86_64 GNU/Linux
Debian GNU / Linux 4.0(etch)32位,PHP 5.2.0
Linux SYSTEM_NAME 2.6.18-028stab062.3#1 SMP SYSTEM_DATE i686
Gentoo linux,32位,PHP 5.2:
Linux SYSTEM_NAME 2.6.35-gentoo-r8sh#1 SMP PREEMPT SYSTEM_DATE i686
Fedora 13 64位:
Linux SYSTEM_NAME 2.6.34.7-56.fc13.x86_64#1 SMP SYSTEM_DATE x86_64
Centos 5.5 x86:
Linux SYSTEM_NAME 2.6.18-194.17.1.el5#1 SMP SYSTEM_DATE i686
Mac OS Snow Leopard(imac 24”)
Darwin SYSTEM_NAME.local 10.4.0 Darwin Kernel Version 10.4.0: SYSTEM_DATE; root: xnu-1504.7.4〜1 / RELEASE_I386 i386
Windows 7 Professional 64位,PHP 5.3 32位:
Windows NT SYSTEM_NAME 6.1 build 7600((null))i586
Windows 2008 Server 64位
Windows NT SYSTEM_NAME 6.0 build 6002(Windows Server 2008 Standard Edition Service Pack 2)i586
Windows XP SP3
Windows NT SYSTEM_NAME 5.1 build 2600

1

Cygwin(32位安装版)在运行Windows 10 64位操作系统上,运行PHP 5.6.17。

CYGWIN_NT-10.0-WOW win8-testing-vm 2.4.1(0.293/5/3) 2016-01-24 11:24 i686

“OS” 部分(CYGWIN_NT-10.0-WOW)与 Windows 的格式不同。它本可以是 Cygwin NT 10.0 WoW,这样更易读。 - Franklin Yu

1

Mac OS X 10.6.4,php 5.3.2

Darwin [myMachineName] 10.4.0 Darwin Kernel Version 10.4.0: Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386

本来想贴上我的,但它与这个完全一致。 - BoltClock

1

Ubuntu 10.10 32位 (i686)

PHP 版本

PHP 5.3.3-1ubuntu9.1 with Suhosin-Patch (cli) (built: Oct 15 2010 14:17:04)

输出:

Linux lenovo-t60 2.6.35-22-generic #34-Ubuntu SMP Sun Oct 10 09:24:00 UTC 2010 i686

1

Centos 5.5 x86:

Linux <hostname>.<domainname> 2.6.18-194.17.1.el5 #1 SMP Wed Sep 29 12:51:33 EDT 2010 i686

1

Windows 7 64位操作系统,搭配php-5.3.3-nts-Win32-VC9-x86版本。

Windows NT <name> 6.1 build 7600 (Unknow Windows version Ultimate Edition) i586

1

Windows 7 专业版 64 位,PHP 5.3 32 位:

Windows NT *Name of my machine* 6.1 build 7600 ((null)) i586

为什么在运行Windows 7时会显示“Windows NT”?对我来说,Windows 10也是如此。 - Omar Tariq
1
@OmarTariq 历史原因 - Windows NT 是与基于DOS的Windows 3.x和95平行开发的,而NT是一个全新的面向服务器的操作系统,更加稳定。NT核心最终成为所有Windows版本的基础(我认为从Windows XP开始)。 - Pekka

1

Gentoo Linux,32位,PHP 5.2:

Linux office 2.6.35-gentoo-r8sh #1 SMP PREEMPT Tue Sep 28 13:35:58 EEST 2010 i686

1

Windows 2008 Server 64位,PHP 5.2 32位,均可通过Apache和CLI使用:

Windows NT *Name of machine* 6.0 build 6002 (Windows Server 2008 Standard Edition Service Pack 2) i586

1

Mac OS Snow Leopard (iMac 24")

Darwin XXXXXXX-YYYYYYY.local 10.4.0 Darwin Kernel Version 10.4.0: Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386
其中,XXXX-YYYY 是我的名字和姓氏

Windows XP SP3

Windows NT XXXXXX 5.1 build 2600
其中,XXXXX 是计算机名称


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接