在linux上经常使用ls,grep,vi等命令,如何查看这些命令的绝对路径呢?

通过whereis/which 就可以啦,但是这两个命令之间还是有一些区别。网上查了一下资料,解释如下:

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

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

which命令的原理:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

which命令的使用实例:

  $ which grep

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

whereis命令的使用实例:

  $ whereis grep

下面举个例子来说明。假如你的linux系统上装了多个版本的java。如果你直接在命令行敲命令 "java -version" ,会得到一个结果。但是,你知道是哪一个路径下的java在执行吗?如果想知道,可以用 which 命令:

which java

返回的是 PATH路径中第一个JAVA的位置,也就是JAVA命令默认执行的位置

如果使用命令: whereis java

那么你会得到很多条结果,因为这个命令把所有包含java(不管是文件还是文件夹)的路径都列了出来。

转载blog地址:http://hi.baidu.com/longredhao/item/911356ea2d8bed3687d9deed

最新文章

  1. SQL Server 2008 R2——当前日期下,一年前数据的统计值
  2. DDNS动态更新
  3. MonogDB初探增加和删除
  4. C#中的try catch 和finally
  5. vsftp详细配置(转)
  6. 《Unix网络编程》卷一(简介TCP/IP、基础套接字编程)
  7. OSI/RM网络7层体系
  8. ZendStudio9之SVN项目代码提示丢失解决
  9. html5实例-闪烁的星星
  10. xamarin.android 绑定百度地图SDK遇到的问题
  11. IDLE打开Python报错 api-ms-win-crt-runtimel1-1-0.dll缺失的解决方案
  12. AlwaysUp使用方法
  13. 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery )
  14. RocketMQ入门(消费者)_3
  15. Javascript模版引擎mustache.js简介
  16. 并查集---java模板
  17. unbuntu中如何像Windows一样顺畅的切换中英文输入法
  18. LA 3890 Most Distant Point from the Sea(半平面交)
  19. java-线程(runoob.com)
  20. postgresql 查看数据库,表,索引,表空间以及大小

热门文章

  1. Day25-博客系统
  2. AtCoder Grand Contest 006
  3. luogu2679 [NOIp2015]子串 (dp)
  4. MyEclipse创建WebService服务端和客户端
  5. Java IO 类一览表
  6. 文件通过svn updata更新不到,并且svn st显示被删除的解决办法
  7. python学习笔记6--操作Mysql
  8. Java入门系列(八)多线程
  9. AngularJS入门基础——$provide.decorator 实例讲解
  10. Guava HashMultiset(MultiSet)