Linux搜索文件路径

在安装好Git、JDK和jenkins之后,就需要在jenkins中进行对应的设置,比如在全局工具配置模块,需要写入JDK的安装路径。

1、which java

首先输入命令行,查看结果:

 [root@localhost ~]# which java

 /usr/bin/java 

PS:which Java是无法定位到Java的安装路径的,只能定位到执行路径;whereis Java也无法定位,只能展示一部分的Java路径,如下所示:

 [root@localhost ~]# whereis java

 java: /usr/bin/java /usr/lib/java /etc/java /usr/share/java /usr/share/man/man1/java.1.gz 

2、echo $JAVA_HOME

使用 echo $JAVA_HOME 命令可以定位到Java安装路径,但是前提是配置了环境变量$JAVA_HOME,否则还是定位不到,如下所示:

[root@localhost ~]# java -version
openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)
[root@localhost ~]# echo $JAVA_HOME
3、rpm -qa | grep java

如果JDK是源码安装,那么rpm -qa | grep java命令也是定位不到的jdk的安装路径的,比如我是用的yum命令安装,使用rpm -qa | grep java命令的话,结果如下所示:

[root@localhost ~]# rpm -qa | grep java
javapackages-tools-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.161-0.b14.el7_4.x86_64
tzdata-java-2018d-1.el7.noarch
java-1.8.0-openjdk-devel-1.8.0.161-0.b14.el7_4.x86_64
java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64
java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64
python-javapackages-3.4.1-11.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.0.el7_4.x86_64
[root@localhost ~]# 
4、ls -lrt

先了解下ls命令:

-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) 
 
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 
 
-r 将文件以相反次序显示(原定依英文字母次序) 
 
-t 将文件依建立时间之先后次序列出 
 
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录) 
 
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/" 
 
-R 若目录下有文件,则以下之文件亦皆依序列出
根据上面的命令,我们可以执行如下命令,找到JDK的安装路径:

 

[root@localhost ~]# ls -lrt /usr/bin/java
lrwxrwxrwx 1 root root 22 Apr  3 19:30 /usr/bin/java -> /etc/alternatives/java
[root@localhost ~]# ls -lrt /etc/alternatives/java
lrwxrwxrwx 1 root root 73 Apr  3 19:30 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/bin/java
[root@localhost ~]# cd /usr/lib/jvm
[root@localhost ~]# ls
java                                                jre-1.7.0
java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64  jre-1.7.0-openjdk
java-1.8.0                                          jre-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64
java-1.8.0-openjdk                                  jre-1.8.0
java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64     jre-1.8.0-openjdk
java-openjdk                                        jre-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64
jre                                                 jre-openjdk
ls -lrt解析:即将文件以建立时间先后顺序的倒叙排列显示,从上面的结果可以看出,/usr/bin/java是执行路径,那么继续执行后面的文件路径,即可找到JDK的安装路径为/usr/lib/jvm/java-1.8.0。

PS:上面提到的几种方法,适用于安装在Linux上的软件查询路径使用(并不仅仅限于查找JDK安装路径)

 

Linux下有两个命令可以查看命令或者文件所在的位置

1.which

which 用来查看当前要执行的命令所在的路径

举个例子:

[root@admin ~]# which python
/usr/bin/python

意思就是说:如果我直接输入 python ,那么输出的就是 python 命令的默认执行路径 即: /usr/bin/python

 

 

which命令的原理:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,

使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

 

which命令的使用实例:

  $ which grep

 

 

2.whereis

whereis 用来查看一个命令或者文件所在的路径

举个例子:

[root@admin ~]# whereis python
python: /usr/bin/python /usr/bin/python2.6 /usr/lib/python2.6 /usr/lib64/python2.6 /usr/include/python2.6 /usr/local/python /usr/share/man/man1/python.1.gz

意思就是说:whereis 会搜索出所有的名字中带有 python 的文件或者文件夹

 

 

whereis命令原理:只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

 

whereis命令的使用实例:

  $ whereis grep

 

通过文件名查找

比如说我要查找sapjco3.jar的位置

find / -name sapjco3.jar

显示结果

 

find查找结果

根据部分文件名查找方法

查找某个文件夹下包含epc的文件

find /test -name '*epc*'

查找某个文件夹下epc开头的文件

find /test -name 'epc*'



原文:

https://www.jianshu.com/p/6d64d3fb711c

https://blog.csdn.net/qingzhuyuxian/article/details/81910217

https://blog.csdn.net/weixin_39531549/article/details/88891367

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值