00. 目录

文章目录

  • 00. 目录
  • 01. 命令概述
  • 02. 命令格式
  • 03. 常用选项
  • 04. 参考示例
  • 05. 附录

01. 命令概述

查找环境变量中的文件

which 命令用于查找并显示给定命令的绝对路径,环境变量 PATH 中保存了查找命令时需要遍历的目录。which 指令会在环境变量 $PATH 设置的目录里查找符合条件的文件。也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

02. 命令格式

which [选项] 执行文件名 […]

03. 常用选项

查找环境变量中的文件-a   查找全部内容,而非第一个文件
-n   <文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p   <文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。
-w  指定输出时栏位的宽度。
-V  显示版本信息。--version, -[vV] 显示版本信息并退出
--help  显示帮助信息并退出
--skip-dot  跳过 PATH 中以点开头的目录
--skip-tilde    跳过 PATH 中以波形符号开头的目录
--show-dot  不要在输出中将点扩展到当前目录
--show-tilde    为 HOME 目录(非根目录)输出波形
--tty-only  如果不在 tty 上,停止右边的处理选项
--all, -a   打印 PATH 中的所有匹配项,而不仅仅是第一个
--read-alias, -i    从 stdin 中读取别名列表
--skip-alias    忽略选项 --read-alias;不读 stdin
--read-functions    从 stdin 读取 shell 函数
--skip-functions    忽略选项 --read-functions;不读 stdin

04. 参考示例

4.1 显示命令的路径

[deng@localhost test]$ which bash
/usr/bin/bash

说明:which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行文件!所以,不同的 PATH 配置内容所找到的命令可能不一样的。

4.2 显示命令的别名

[deng@localhost test]$ which which
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'/usr/bin/alias/usr/bin/which
[deng@localhost test]$

4.3 普通用户和root用户查找路径不同

普通用户查找的情形

[deng@localhost test]$ which pwd
/usr/bin/pwd

root用户查找的情形

[root@localhost ~]# which pwd
/bin/pwd
[root@localhost ~]#

4.4 查找不到内建命令

[root@localhost ~]# which type
/usr/bin/which: no type in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
[root@localhost ~]#

05. 附录

参考:【Linux】一步一步学Linux系列教程汇总

【Linux】一步一步学Linux——which命令(45)相关推荐

  1. 学linux作用,linux有必要学吗?学linux有什么作用,学linux能干什么

    Linux是一种自由和开放源码的类UNIX操作系统.Linux有必要学吗?学Linux有什么作用,学Linux能干什么?Linux最大的作用就是提高效率.当你习惯在Linux命令行下工作,再回到win ...

  2. LINUX学习之路(学LINUX必看)

    很多同学接触Linux不多,对Linux平台的开发更是一无所知.而现在的趋势越来越表明,作为一 个优秀的软件开发人员,或计算机IT行业从业人员,掌握Linux是一种很重要的谋生资源与手段.下来我将会结 ...

  3. linux学习需要什么基础,学linux需要什么基础?

    近几年来,随着计算机网络的发展,越来越多的人学习 linux.对于想要从事运维工作或者从事智能开发方面的同学来说,学习 linux 是必要的.linux 的学习并不简单,那么这篇文章 w3cschoo ...

  4. 分享--linux 学习之路(学linux必看)

    很多同学接触Linux不多,对Linux平台的开发更是一无所知. 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机IT行业从业人员, 掌握Linux是一种很重要的谋生资源与手段. 下来我将 ...

  5. 英语不好学linux运维难吗,学Linux系统难吗?学好Linux运维需要多久

    随着近年来经济的快速发展,企业对Linux人才的需求也越来越高.许多人认为,Linux是一个非常简单的行业,然而,Linux行业是一个综合了云计算.Linux运维.Linux开发.Linux编程等多方 ...

  6. 不会linux的php难找工作,学linux系统难吗

    这是 Linux初学者经常会问的问题,其实Linux和Windows一样都属于操作系统,对于大部分人来说,对Windows操作系统十分熟悉,而对Linux操作系统没有使用过,所以觉得很难,其实,只要熟 ...

  7. linux lamp实验报告,新手学Linux--构建lamp

    本人前不久开始学习Linux,俗话说得好,好记性不如烂笔头,于是决定将平日所学所做实验,记录下来,以备回顾.由于本人是个初学者,所以借鉴了很多网上的资料,但在此处写出来的都是经过本人思考和多次实验的记 ...

  8. Linux其实没那么难学

    互联网技术总是更新迭代的,因为2020年的一场疫情,影响着中国乃至整个世界,就在这一年,网络直播,远程办公,在线教育等等的互联网产物进入了众多人的世界,当然,这其中离不开程序员的功劳. 李开复曾经说过 ...

  9. 大学生为什么要学Linux?Linux有什么优点?

    前言 Linux是一种自由和开放源码的类UNIX操作系统.Linux有必要学吗?学Linux有什么作用,学Linux能干什么?Linux最大的作用就是提高效率.当你习惯在Linux命令行下工作,再回到 ...

  10. 【Linux】一步一步学Linux——Linux版本(03)

    目录 00. 目录 01. Linux内核版本 02. Linux内核官方网站 03. Linux发行版本 04. Linux发行版本介绍 4.1 Ubuntu 4.2 RedHat 4.3 Debi ...

最新文章

  1. 再发布一个windows live writer 插件 图标信息框 wlw plugin icon info frame
  2. a标签 vue 动态点击_vue实现a标签点击高亮方法
  3. mysql 触发器 本表_MySQL触发器处理本表数据
  4. LeetCode 1003. 检查替换后的词是否有效(栈)
  5. post大小限制_作为一个程序员,面试中常问的get和post的区别,你真的知道吗
  6. 彻底删除0KB顽固文件或文件夹的方法
  7. zipfian 参数是什么 Zipfian distribution 齐夫定律
  8. 无锡关于计算机青少年的比赛,无锡市青少年机器人竞赛开赛 1200多名选手投身“编程王国”...
  9. qt中将数据存入文档再读出------------ writeRawData 与readRawData成对使用
  10. 电机驱动软件学习笔记——ADC采样电流、温度、按键值
  11. java支付宝网页授权_轻松实现支付宝服务窗网页授权从配置到获取授权获取用户信息...
  12. feign接口返回泛型设置属性为null问题
  13. 编写一个求x的n次方的函数
  14. 解决本地新建项目推送到码云失败的问题
  15. 小米前端实习电话面试一面
  16. ftp(文件传输协议)服务
  17. .Net6 图片转文字PictureToTxt
  18. Meta-SR: A Magnification-Arbitrary Network for Super-Resolution
  19. 巧用SEO技术,速提自然流量
  20. [1]无线通信--介绍基本概念

热门文章

  1. 共同好友推荐java_【开班典礼】初雪迎初见,白色浪漫中,他们选择从此与Java相伴!...
  2. 对的调用没有匹配的函数_前端开发之——函数、事件、js对象
  3. Java黑皮书课后题第3章:**3.23(几何:点是否在矩形内)编写程序,提示用户输入点(x,y),然后检测该点是否在以原点为中心、宽为10、高为5的矩形中
  4. pyqt 子窗口控制主窗口绘图_实战PyQt5: 005-主窗口QMainWindow
  5. linux父子进程字写父读无效,linux父子进程
  6. const_cast的应用
  7. 轻量级ORM框架——第二篇:Dapper中的一些复杂操作和inner join应该注意的坑
  8. Java基础(三十五)Math、Random类和数字格式化(String.format方法)
  9. MySql连接——内连接、外连接(左连接、右连接、全连接)
  10. 你可以不知道原因,但是,我们不能停止努力。httplook抓取路由配置界面信息...