Linux centos stream 9命令及源码

学过linux操作系统的人,对文件、命令比较熟悉。最多的操作是用命令处理文件。

随着学习的深入,会提出疑问:命令长什么样?

出于好奇,会找到命令存放的地方,用cat命令看一下,结果可想而知。

我们知道,命令分内部命令和外部命令,存放在不同的位置。外部命令就是一个可执行文件的文件名,其就是由C语言编写的二进制文件而经过编译成为可执行可链接的格式文件。

我们一般把C语言编写的二进制文件称为命令的源码(因为源码文件需要编译后才能执行, linux操作系统中不直接保存源码,仅保留可执行的格式文件)。源码文件保存在GNU网络服务器上,需要时下载保存。

本文就命令的二进制工具查看及源码文件作一讨论。

一、命令位置

考虑到运行效率等原因,不可能把所有的命令都集成在shell里面。更多的linux命令是独立于shell,称作外部命令,比如cp、ls等命令。每个外部命令都对应系统中的一个可执行的二进制程序文件

内部命令保存在bash中,不以独立文件存在,下面的命令不能查到。

1.ls

外部命令一般存放在目录/bin/、/usr/bin/下,可用ls查看:

呈绿色的命令就是可用的外部命令。

2.which

which命令(或指令)功能是在环境变量$PATH设置的目录里查找符合条件的文件。

        which bash

        which cd

        which uname

        which echo

3.whereis

whersis命令(或指令)功能是在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件或是帮助文件。

该命令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位查找需使用locate命令。

        whereis bash

        whereis cd

        whereis uname

        whereis echo

4.rpm  -qf

对于某一个外部命令,可以用rpm命令查看该命令由哪个程序包安装的。或者说,外部命令所在的安装包可用rpm  –qf  `which 命令名` 查询到。

(本文所有命令执行案例均在centos stream9 系统中验证,其他操作系统的同功能命令有所不同,请注意!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_36142959

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值