我正在使用linux来尝试和exec运行不同的子进程到父进程。
我可以执行子进程来运行ps命令。
int x = fork();
if (x == 0)
{
execl("/bin/ps","ps", NULL);
}
然而,只要我尝试执行我从我自己的c文件创建的.exe文件,就像这个gcc -v test.c -o test.exe
一样。通过运行此代码:
int x = fork();
if (x == 0)
{
execl("/Desktop/test","test.exe", NULL);
}
然后没有任何反应。如果我打印上面的execl
语句,则返回-1。
有谁能告诉我发生什么事?
一些注意事项:
答案 0 :(得分:2)
问题是,您的桌面文件夹位于~/Desktop/
。代字号表示您的home
文件夹。