当我用 gcc 编译 C 程序时,我得到文件 a.exe;但是,要运行它,我必须输入命令./a.exe
。我相信可以编辑 .bashrc 或 .bash_profile,以便我只需要编写命令a.exe
?
答案1
以 结尾的文件.exe
在 Windows 系统上很常见。在 Linux 系统上,二进制文件通常没有任何扩展名。
当运行时gcc
没有使用-o
指定输出文件的名称时,它通常会(由于历史原因)创建一个名为a.out
.
当尝试运行命令而不指定其位置时,linux 将在PATH
环境变量中搜索给定命令的位置。
该PATH
变量通常会有意地不是包含当前目录。您可以将.
(当前目录)添加到列表中,但这会导致意想不到的效果,例如,如果您键入,ls
您将期望看到当前目录的内容,而不是运行一些名为“ls”的文件,该文件可能碰巧存在那里。
因此,如果您想从未列出的位置运行命令,PATH
则需要显式指定其路径。要运行a.out
当前目录 () 中命名的文件.
,您必须键入./a.out
.