oeasy教您玩转linux010107那啥在哪 whereis

简介: oeasy教您玩转linux010107那啥在哪 whereis

回忆上次内容 😌

上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置。

现在我们要制作这样一个列表:🗒

对于 /proc 路径进行列表
对子路径递归列表
显示隐藏文件
显示详细信息
其中容量使用人们熟知的单位

大家忘记了吗?!!😱

没关系,我们可以查手册,📕 那么做完了之后可以思考,ls 到底在哪?🤔
ls 在哪?🤔

想要知道 ls 在哪就得用新命令 whereis,命令的参数是 ls,综合起来就是:

whereis ls
[copy]

我们可以得到 ls 两个硬盘位置:

/bin/ls
/usr/share/man/man1/ls.1.gz
[copy]

为什么 ls 在硬盘里?🤔

ls 文件最开始在 /bin 这个位置
当我在命令行敲击之后 ls 回车之后
操作系统要求运行 ls 程序
操作系统分配内存空间给 ls
操作系统把 ls 从硬盘加载到内存中
操作系统分配 cpu 资源去执行程序
最终把 ls 的结果输出到标准输出流(屏幕)上

为什么 ls 命令对应两个位置呢 🤔

我们可以对 whereis 发出询问:

whatis whereis
[copy]

whereis 可以帮我们定位命令的位置

但是 whereis 描述太简单了,我们可以查询 whereis 的手册 man:📕

man whereis
[copy]

我们可以查询到 whereis 的具体内容:📕

Image text
试试选项的功能

whereis -b ls
[copy]

b 的意思是 binary 二进制
查找 whereis 二进制
二进制文件在/bin 里

whereis -m
[copy]

m 的意思是 manual 文档
查找 whereis 的文档
文档在/usr/share/man 里面

总结来说:whereis -b ls 是二进制命令,whereis -m 另一个是帮助手册。

那 ls 的源文件在哪呢?这有点复杂... 🧐
得到 ls 源文件

dpkg -S /bin/ls
    dpkg 是 Debian Package 是 Debian 的包管理命令
    -S 是在已经安装的包里面查找 search
    /bin/ls 是具体文件的位置
    得到结果是 coreutils(核心应用)

设置源
    sudo vi /etc/apt/sources.txt
    打开源的配置文件
    sudo 是使用管理员权限
        vi 是文本编辑器
        /etc/apt/sources.txt 是源的配置文件
    直接输入 G(直接到最后一行 Ground)
        注意这个时候左下角是空白状态
    直接输入 o(在当前行后面添加一行)
        注意左下角变成了 Insert(插入状态)
    将下面粘贴到最后一行
        deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
        这条设置的是 debian 的源的位置
    摁下 esc
        注意左下角不再是 Insert(插入状态), 而是退回到了空白
    依次摁下
        :
        w
        q
        回车
        保存并退出 vi

用 apt 下载源代码
    apt 是高级包管理的命令
    运行 sudo apt update(更新源)
    sudo apt source coreutils(获得源代码)
    在当前文件夹下找到 coreutilsXXX 文件夹
    进入 src 源文件文件夹 (source)
    ls ls.*
    找到了 ls.c 文件 (ls 的 c 语言源文件)

思考 🤔

我们真的可以获得 ls 源代码,这太棒了!👊 可是如果有多个版本的命令比如:

java8
java13

那我到底用的是那个版本的 java 呢?我们下次再说。 👋

目录
相关文章
|
7月前
|
Shell Linux 开发工具
【Shell 命令集合 文件管理】Linux 定位可执行文件命令 whereis 命令使用教程
【Shell 命令集合 文件管理】Linux 定位可执行文件命令 whereis 命令使用教程
72 0
|
Linux
Linux命令(27)之whereis
Linux命令(27)之whereis
132 39
|
人工智能 Java Linux
[oeasy]python001_先跑起来_python_三大系统选择_windows_mac_linux
[oeasy]python001_先跑起来_python_三大系统选择_windows_mac_linux
57 1
|
7月前
|
Linux Shell 数据库
linux(十九)查找文件的四个命令whereis、which、find、locate~
linux(十九)查找文件的四个命令whereis、which、find、locate~
107 0
|
Linux Shell 应用服务中间件
Linux which & whereis & locate 命令详解
Linux which & whereis & locate 命令详解
110 0
|
Linux
Linux查找和压缩文件:find、which、whereis、tar(上)
1 查找文件 1.1 find 采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找。 命令的特点:
169 1
|
Java Linux Shell
[oeasy]教您玩转linux0001 - 先跑起来 🥊
先跑起来 🥊 Python 什么是 Python? Python 很好用 适合初学者 而且在各个领域都很强大 后来居上 下图可以点开 python3 早已有之 最终逆风翻盘 当然 java 也是非常伟大的对手 历史辉煌 三次问鼎 tiobe 霸主之位 LinuxJournal 最喜欢的编程语言 2009-2011 最喜欢的脚本语言 2006-2008、2010、2011 LinuxQuestion.org 会员选择大奖 2007-2010 从零开始 目前浏览器里这个系统是linux 跑的桌面是xfce 这个词的发音为X-f-c-e即四个字母一个一个的
96 0
[oeasy]教您玩转linux0001 - 先跑起来 🥊
|
Linux 数据库
linux中find,locate,whereis,which关系和用法
linux中find,locate,whereis,which关系和用法
146 0
|
安全 Linux Shell
linux命令_which&&whereis&&locate以及区别
linux命令_which&&whereis&&locate以及区别
216 0
|
Linux Windows
Linux查找和压缩文件:find、which、whereis、tar(下)
1 查找文件 1.1 find 采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找。 命令的特点:
266 0