Windows 中类似Linux的which命令的命令
Linux中我们经常使用 which java
找 java
命令究竟在什么目录。该命令的意思是在环境变量中查找 java
命令的位置。
在windows中,没有which
命令,那有什么类似的?
where
,比如使用 where java
,注意在PowerShell中要用 where.exe java
,这就可以查看环境变量中有哪些java命令。
注意:
是可能输出多个记录的,比如
C:\Users\stonewang>where java
C:\Program Files\Java\jdk1.8.0_181\bin\java.exe
C:\ProgramData\Oracle\Java\javapath\java.exe
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
这里离有3行记录,我如果执行 java -version
实际上是用哪行的java命令呢?
第一行。有重复的时候第一个就是答案。
像配置的环境变量一样,在配置的环境变量中,依次查找,首次找到目标命令的,生效。另外注意,在环境变量Path中更改环境变量的位置,会导致where java
输出的结果的顺序也相应改变。
补充
1、第一点
我们如何验证下面三条的java.exe各是什么版本呢?
C:\Program Files\Java\jdk1.8.0_181\bin\java.exe
C:\ProgramData\Oracle\Java\javapath\java.exe
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
验证版本用 java -version
,为了指定特定的java.exe
,必须使用全路径。只要注意路径中含有空格的,要用引号即可,路径无空格的,则引号可选。
"C:\Program Files\Java\jdk1.8.0_181\bin\java.exe" -version
C:\ProgramData\Oracle\Java\javapath\java.exe -version
"C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe" -version
2、第二点
有时候你点击Path环境变量总是显示图1而不是图2,为什么呢?为什么会总是一行显示这么不方便呢?
想一下你最近调整了什么顺序,是你的某个环境变量的顺序调整导致的
(据说好像是因为你的环境变量放在system32前面导致的)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135212.html