Linux操作命令(四)
- 本次实验将介绍 Linux 命令中 which、whereis、locate 命令的用法。
- which
- whereis
- locate
1.which
which命令的作用是,在PATH变量指定的路径中搜索可执行文件的所在唔知。它一般用来确认系统中是否安装了指定的软件。
- which gcc
2.查看cd命令的位置路径
- which cd
从上面的显示信息可以看到在实验楼的系统中 cd 是一个 shell 函数。
再来在我本地 linux 系统上执行 which cd 命令,显示的结果如下:
显示在 PATH 变量指定的路径下没有 cd 命令。为什么显示没有呢?这是因为 cd 是 shell 内建命令,而 which 默认是找 PATH 内所指定的目录,内建命令不在其指定的目录中,所以当然一定找不到。
那么就有个问题,为什么实验楼环境中 cd 是一个 shell 函数,而其他 linux 环境中 cd 是内建命令呢?这跟所使用的 bash 有关。
- echo $SHELL 命令查看当前使用的 shell。
补充知识
到底什么是命令?
命令可以是下面四种形式之一:
是一个可执行程序,就像我们所看到的位于目录/usr/bin 中的文件一样。 属于这一类的程序,可以编译成二进制文件,诸如用 C 和 C++语言写成的程序, 也可以是由脚本语言写成的程序,比如说 shell,perl,python,ruby,等等。
是一个内建于 shell 自身的命令。bash 支持若干命令,内部叫做 shell 内部命令 (builtins)。例如,上面我本地环境中的 cd 命令,就是一个 shell 内部命令。
是一个 shell 函数。这些是小规模的 shell 脚本,它们混合到环境变量中。 比如上面讲到的 cd 命令,在实验楼环境中就是一个 shell 函数。
是一个命令别名。我们可以定义自己的命令,建立在其它命令之上。
3.whereis
whereis命令主要用于定位可执行文件、源代码文件、帮助文件在文件系统中的位置。whereis命令还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。
whereis命令查找速度非常快,因为它根本不是在磁盘中漫无目的乱找。而是在一个数据库中(var/lib/mlocatr)查询。这个数据库是Linux系统自动创建的,包含有本地所有文件的信息,并且每天通过自动执行updatedb命令更新一次。也正是因为这个数据库要每天才更新一次,就会使得whereis命令的搜索结果有时候会不准确,比如刚刚添加的文件可能搜不到。
- -b:定位可执行文件
- -m:定位帮助文件
- -s:定位源代码文件
- -u:默认搜索路径下除可执行文件、源代码文件、帮助文件以外的其他文件
- -B:指定搜索可执行文件的路径
- -M;指定搜索帮助文件的路径
- -S:指定搜索源代码文件的路径
- whereis -b gcc
2.搜索gcc源代码的路径
- whereis -s gcc
4.locate
locate和whereis类似。且它们使用的是相同的数据库。但whereis命令只能搜索可执行文件、联机帮助文件、源代码文件,如果要获得更全面的搜索结果,可以使用locate命令。
locate命令使用了十分复杂的匹配语法,可以使特殊字元(如'*'和'?')来指定需要查找的样本。
- -q:安静模式,不会显示任何错误讯息
- -n:至多显示n个输出
- -r:使用正规表达式做寻找的条件
- -V:显示版本讯息
- locate /etc/sh
注意在实验楼环境中一开始执行这个命令会报错:locate 无法执行 stat() ‘/var/lib/mlocate/mlocate.db’
:没有那个文件或目录。
解决办法是执行sudo updatedb
命令。
2.搜索etc目录下文件名包含lou的文件
- locate /etc/*lou*
Linux操作命令(四)的更多相关文章
- 一定要知道的,那些Linux操作命令
一定要知道的,那些Linux基本操作命令(一) 目录 1.文件和目录操作命令 2.用户和用户组操作命令 3.vim编辑器操作命令 4.打包和解压操作命令 5.系统操作命令 为什么要学习linux? 1 ...
- Linux 操作命令列表记录
Linux 操作命令列表记录 SSH登录 登录 ## 范式 ssh [username]@[host] ## 例 ssh -p 1222 root@10.0.0.1 使用非默认端口(ssh默认端口22 ...
- Linux下四款常见远程工具比较
摘要:Linux远程可不像Windows下那么方便,主要是连接的速度.显示的画质不能令人满意(延迟.撕裂).本文只是说一下我用过的四款远程工具.Anydesk官网:https://anydesk.co ...
- 学习linux/unix编程方法的建议,学习Linux的四个步骤(转)
解答:学习Linux的四个步骤假设你是计算机科班出身,计算机系的基本课程如数据结构.操作系统.体系结构.编译原理.计算机网络你全修过我想大概可以分为4个阶段,水平从低到高从安装使用=>linux ...
- Linux下四款Web服务器压力测试工具(http_load、webbench、ab、siege)介绍
一.http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把 ...
- Linux第四次学习笔记
程序的机器级表示 寻址方式的演变 DOS → 8086 → IA32 Inter处理器系列俗称x86,其演变过程(根据其所需要的晶体管数量来说明): 8086 → 80286 → i386 → i48 ...
- Linux操作命令(一)
ls 命令 ls 命令是 linux 下最常用的命令,ls 命令就是 list 的缩写. ls 用来打印出当前目录的清单.如果 ls 指定其他目录,那么就会显示指定目录里的文件及文件夹清单. 通过 l ...
- linux第四次读书笔记
第四章:进程调度 一.多任务 1.非抢占式多任务 进程会一直执行直到自己主动停止运行(这一步骤称为让步) 2.抢占式多任务 Linux/Unix使用的是抢占式的方式:强制的挂起进程的动作就叫做抢占.进 ...
- 【实践报告】Linux实践四
Linux内核分析 实践四——ELF文件格式分析 一.概述 1.ELF全称Executable and Linkable Format,可执行连接格式,ELF格式的文件用于存储Linux程序.ELF文 ...
随机推荐
- Redis(3) 配置文件 redis.conf
Redis.conf 配置详解: # Redis configuration file example. # # Note that in order to read the configuratio ...
- 整数中1出现的次数(从1到n整数中1出现的次数)
整数中1出现的次数(从1到n整数中1出现的次数) 题目描述 求出1 ~ 13的整数中1出现的次数,并算出100 ~ 1300的整数中1出现的次数?为此他特别数了一下1 ~ 13中包含1的数字有1.10 ...
- 图论:最短路-SPFA
该算法由Bellman-Ford算法演变过来,首先介绍一下Bellman-Ford算法 最短路最多经过n-1个点,可以用n-1轮松弛操作来得到 ;i<n;i++) d[i]=INF; d[]=; ...
- lightoj 1007 - Mathematically Hard 欧拉函数应用
题意:求[a,b]内所有与b互质个数的平方. 思路:简单的欧拉函数应用,由于T很大 先打表求前缀和 最后相减即可 初次接触欧拉函数 可以在素数筛选的写法上修改成欧拉函数.此外本题内存有限制 故直接计算 ...
- Vue 使用中的小技巧(山东数漫江湖)
在vue的使用过程中会遇到各种场景,当普通使用时觉得没什么,但是或许优化一下可以更高效更优美的进行开发.下面有一些我在日常开发的时候用到的小技巧,在下将不定期更新~ 1. 多图表resize事件去中心 ...
- 一键前端代理,一行命令开启nginx容器,代理前端页面
我们在前端开发的过程中,在对接口时候,往往需要跨域请求,那么及其简便的方法就是使用nginx反向代理,但是存在几点缺点 1.在新的一个项目下,我们需要找到安装nginx目录的nginx.conf文件并 ...
- EditText中inputType详解
<EditText Android:layout_width="fill_parent" android:layout_height="wrap_content&q ...
- JSOI2018简要题解
来自FallDream的博客,未经允许,请勿转载,谢谢. 有幸拜读到贵省的题目,题的质量还不错,而且相比zjoi可做多了,简单发一下题解吧. 还有就是,怎么markdown在博客园上的代码这么丑啊 「 ...
- 计数排序的实现--适用于元素均较小的seq
今天无聊就打算把所有的排序算法都看一遍... 计数排序的时间复杂度是O(n),在算法导论中,用决策树模型中论证了,比较排序的情况为nlogn的复杂度.而计数排序的时间复杂度小于他的原因就是它不需要进行 ...
- opengl基础学习专题 (一 )编程环境搭建
题外话: 第一次在博客园上同大家分享博文.水的的地方,错别字的地方.环境交流.批评.知道了马上改. 以前在百度空间中写技术分享博文,后来百度啥也没说就把整个空间封了.当时感觉 还是有点寒心.只想黑一下 ...