Ich erstelle eine kleine Unix-Shell, Execve hat ein Problem mit sed
. Wenn ich sed -e 's/Roses/Turnips/'
ausführe, schlägt der Befehl mit Execve fehl.Execve mit Sed fehlschlägt
#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>
int main(int ac, char **av, char **envp)
{
char *argv[] = { "/usr/bin/sed", "-e", "'s/Roses/Turnips/'", 0 };
execve(argv[0], &argv[0], envp);
fprintf(stderr, "Failed!\n");
return -1;
}
Fehler:
/usr/bin/sed: -e expression #1, char 1: unknown command: `''
haben Sie versucht, die einfachen Anführungszeichen zu umgehen? – t0mm13b