使用与现有命令相同的方式运行程序

使用与现有命令相同的方式运行程序

假设我在当前目录中创建了一个名为“xeyes.exe”的可运行程序。

当我在命令提示符中输入命令“xeyes”时,为什么运行的是程序而不是命令?

答案1

为什么运行的是程序而不是命令?

因为Unix是一个安全的多用户系统。

它不会根据文件的名称对文件做出假设 - 它们的行为是在元数据中定义的。

默认情况下,shell 只会从定义的位置运行程序,除非您明确告诉它否则这样做。

假设我创建了一个程序,该程序删除了随机文件,发送了粗鲁的电子邮件,并通过电子邮件向我发送了运行用户的私有 ssh 密钥的副本,并将其命名为“ls”,并将其留在了很多人使用的目录中?

相关内容