这是另一个(可能)noob问题.让我们假设我有一个用C编写的简单的1文件程序(称为myProg.c).当我想在Linux/MacOSX中编译这个程序时,我输入"gcc -o haha myProg.c".生成的可执行文件现在名为"haha".当我想运行这个程序时,我需要在控制台中输入"./haha".
我还需要做什么来停止输入"./"?如何通过输入"haha"来确保我的程序将被调用?我检查了文件"haha"的权限,它是可执行的.我是否正确认为"./"表示可执行文件的路径,即文件存在于当前目录(".")中?
默认情况下,当前目录不是unix派生的OS中的PATH的一部分.这是一种安全措施,您可以但不应通过修改.bash_profile或修改PATH来更改.bashrc
不在路径中包含当前目录的原因:假设您是root用户,并且您有恶意用户.该用户ls在其主目录中创建例如可执行文件,这样做不太好.如果您正在查看此用户的操作,并ls在其主目录中键入,则将执行其 ls.
如果您只想更改它,请添加PATH="${PATH}:."到您的.bashrc和.bash_profile