【发布时间】:2013-11-30 04:40:41
【问题描述】:
每次我编译一个 C 程序时,比如使用 cc 编译器,我都会在当前目录中获得一个可执行文件。现在,如果我想运行它,而不是只输入 a.out 或 name_of_executable,我必须在前面加上 ./a.out 这个组合。
我理解.(链接到当前目录)和..(链接到其父目录)背后的含义,而且/是目录名称之间的分隔符。
但是./ 是什么意思呢?它只是一种正式的方式来区分引用某事物的名称和运行该事物的意图(因为您的文件名中不能包含/)?
【问题讨论】:
-
我认为当您键入程序名称时,它会使用
PATH来确定在哪里可以找到该程序,除非您已明确说明要查找的目录。./做到了。 (如果您拥有系统管理员权限,这样做真的很重要,否则谁知道您可以执行什么程序。)