我创建了一个shell副本,并且遇到了可执行自制程序的问题。我的意思是,当我想执行诸如java
,ls
,wc
等等的东西时,一切正常...... PATH变量中已经存在的所有东西。允许使用execvp执行程序
现在我想能够执行一个“myls”命令,它是原始ls
的副本。问题是我的程序没有在PATH变量中注册,所以当我尝试execvp("myls", …)
时,出现错误“没有这样的文件或目录”。
我想知道我如何管理这个问题,并能够按照这个层次来执行我的命令:
src
include
bin
makefile
executable <- this one is my main executable
myLs
executableLS <- would like to be able to call this one through execvp
myPs
executablePS <- would like to be able to call this one through execvp
要么将你的程序放在你的'$ PATH'目录下,要么把你的程序放在'$ PATH'上的目录,或者使用适当的路径名(相对或绝对)来标识要运行的程序。 –