通过绝对文件路径运行linux命令

通过绝对文件路径运行linux命令

输出我知道我们可以通过绝对文件路径以及命令本身来调用 Unix 或 Linux 命令。例如,我们可以通过键入ls以及/bin/ls(在 Linux 中)列出目录内容有什么区别吗?。当我这样做时,我得到了相同的输出,但文件类型之间的颜色分离仅存在差异,您可以在上传的图像中看到这一点。

答案1

在提示符下发出命令的作用ls不仅仅是 call /bin/ls。如果ls是别名或函数,则将调用该别名或函数。如果两者都不是,并且它也不是内置命令(ls很少是内置命令),则将在环境变量中的 -delimited 列表ls中的每个目录中执行路径搜索。:$PATH

那个ls第一的发现$PATH将被执行。如果包含此类名称的目录早于列表,则这可能是另一个ls情况。/bin/ls/bin$PATH

使用/bin/sh将绕过别名和函数查找以及任何查找$PATH,而是直接运行该命令。

ls和之间的输出颜色差异/bin/ls可能是通过ls别名来解释的,该别名在调用ls实用程序时添加了额外的命令行选项(使用alias lstype -a lsin进行检查bash)。

相关内容