我有一些linux系统,包括在Windows机器上作为WSL(Linux的Windows子系统)运行的系统。
我希望脚本/程序/任何东西都可以判断它是否在WSL中运行。我可以做些骇人听闻的事情,例如查找/ mnt / c / ...的存在,但这可能只是Linux系统上安装的Windows磁盘。
有没有一种干净的方法可以做到这一点,或者WSL太像一个虚拟机,以至于我们知道我们不在Windows内部运行?
uname -a
对我来说似乎是一个合理的解决方案。
~# uname -a
Linux Eve 4.4.0-18362-Microsoft #476-Microsoft Fri Nov 01 16:53:00 PST 2019 x86_64 x86_64 x86_64 GNU/Linux
统一名称中“ Microsoft”的清楚表示清楚表明我们在WSL中运行。公平地说,这可能只是伪造的uname字符串。但是对于橡胶与道路相遇的地方,这远远不能满足要求。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。