#include #include #include #include #include #include #include #include #include int main(int argc, char *argv[]) { pid_t pid; if (argc < 2) { fprintf(stderr, "Error: Please enter a command.\n"); return EXIT_FAILURE; } else if ( strcmp(argv[1], "./mycopy")== 0){ if (argc != 4){ fprintf(stderr, "Error: Invalid number of arguments.\n"); return EXIT_FAILURE; } pid = fork(); if (pid < 0){ fprintf(stderr, "An error occured\n"); return EXIT_FAILURE; } if (pid == 0) execl(argv[1], argv[1], argv[2], argv[3], NULL); else waitpid(pid, NULL, 0 ); } else if ( strcmp(argv[1], "./myremove")== 0){ if (argc != 3){ fprintf(stderr, "Error: Invalid number of arguments.\n"); return EXIT_FAILURE; } pid = fork(); if (pid < 0){ fprintf(stderr, "An error occured\n"); return EXIT_FAILURE; } if (pid == 0) execl(argv[1], argv[1], argv[2], NULL); else waitpid(pid, NULL, 0 ); } else if ( strcmp(argv[1], "./mymove")== 0){ if (argc != 4){ fprintf(stderr, "Error: Invalid number of arguments.\n"); return EXIT_FAILURE; } pid = fork(); if (pid < 0){ fprintf(stderr, "An error occured\n"); return EXIT_FAILURE; } if (pid == 0) execl(argv[1], argv[1], argv[2], argv[3], NULL); else waitpid(pid, NULL, 0 ); } else { fprintf(stderr, "Error: Please enter a command.\n"); return EXIT_FAILURE; } }