#include #include #include #include #include // ./ripasso - argc=1 argv=["./ripasso"] // ./ripasso ls - argc=2 argv=["./ripasso", "ls"] int main(int argc, char *argv[]) { if (argc < 2) { perror("metti gli argomenti, cogli*ne.\n"); return -1; } pid_t pid = fork(); if (pid < 0) { perror("Errore muori"); return -1; } if (pid == 0) { // Figlio // ./ripasso ls -la // argv[0] = ./ripasso // argv[1] = ls // argv[2] = -la // argv[3] = hsd // argv[4] = NULL execvp(argv[1], &argv[1]); // execlp("ls", "ls", "-la", NULL); return 0; } if (pid > 0) { // Padre wait(NULL); return 0; } return 0; }