mirror of
https://github.com/bigsketti/cshell.git
synced 2025-06-07 05:14:47 +00:00
cleaned up cmd_mode() and improved mkfile error handling
This commit is contained in:
parent
af81c0a0bc
commit
5bc1e0bdf8
51
src/cShell.c
51
src/cShell.c
@ -98,19 +98,25 @@ void cmd_cd(char **args, char **cwd, char **trimmedCWD) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void cmd_mkfile(char **args) {
|
void cmd_mkfile(char **args) {
|
||||||
|
if (args[1] == NULL) {
|
||||||
|
fprintf(stderr, "Error, no file name provided.\n");
|
||||||
|
}
|
||||||
|
|
||||||
FILE *file = fopen(args[1], "w");
|
FILE *file = fopen(args[1], "w");
|
||||||
if (file == NULL) {
|
if (file == NULL) {
|
||||||
perror("Error making file");
|
perror("Error making file");
|
||||||
} else {
|
return;
|
||||||
printf("success\n");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
printf("File made successfully: %s\n", args[1]);
|
||||||
|
fclose(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
void cmd_mkdir(char **args) {
|
void cmd_mkdir(char **args) {
|
||||||
if (mkdir(args[1], 0777) != 0) {
|
if (mkdir(args[1], 0777) != 0) {
|
||||||
perror("Error making directory");
|
perror("Error making directory");
|
||||||
} else {
|
} else {
|
||||||
printf("success\n");
|
printf("Directory made successfully: %s\n", args[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -118,7 +124,7 @@ void cmd_rmfile(char **args) {
|
|||||||
if (remove(args[1]) != 0) {
|
if (remove(args[1]) != 0) {
|
||||||
perror("Error removing file");
|
perror("Error removing file");
|
||||||
} else {
|
} else {
|
||||||
printf("success\n");
|
printf("File removed successfully: %s\n", args[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -126,7 +132,7 @@ void cmd_rmdir(char **args) {
|
|||||||
if (rmdir(args[1]) != 0) {
|
if (rmdir(args[1]) != 0) {
|
||||||
perror("Error removing directory");
|
perror("Error removing directory");
|
||||||
} else {
|
} else {
|
||||||
printf("success\n");
|
printf("Directory removed successfully: %s\n", args[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -136,24 +142,31 @@ void cmd_ls(char **args) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void cmd_mode(char **args) {
|
void cmd_mode(char **args) {
|
||||||
if (strcmp("-h", args[1]) == 0) {
|
if (args[1] == NULL) {
|
||||||
printf("\033[32m");
|
printf("Invalid arguement, type \"help\" for help");
|
||||||
printf("Hacker mode activated\n");
|
}
|
||||||
return;
|
|
||||||
} else if (strcmp("-e", args[1]) == 0) {
|
struct {
|
||||||
printf("\033[31m");
|
char *flag;
|
||||||
printf("Evil mode activated\n");
|
char *color;
|
||||||
return;
|
char *message;
|
||||||
} else if (strcmp("-n", args[1]) == 0) {
|
} modes[] = {
|
||||||
printf("\033[0m");
|
{"-e", "\033[31m", "Evil mode activated\n"},
|
||||||
printf("Normal mode activated\n");
|
{"-h", "\033[32m", "Hacker mode activated\n"},
|
||||||
return;
|
{"-n", "\033[0m", "Normal mode activated\n"},
|
||||||
} else {
|
{NULL, NULL, NULL}
|
||||||
printf("Invalid arguement, type \"help\" for help\n");
|
};
|
||||||
|
|
||||||
|
for (int i = 0; modes[i].flag != NULL; i++) {
|
||||||
|
if(strcmp(modes[i].flag, args[1]) == 0) {
|
||||||
|
printf("%s%s\n", modes[i].color, modes[i].message);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
printf("Invalid arguement, type \"help\" for help\n");
|
||||||
|
}
|
||||||
|
|
||||||
void printClamShell() {
|
void printClamShell() {
|
||||||
printf(" ████ ██████ \n");
|
printf(" ████ ██████ \n");
|
||||||
printf(" ████░░░░████░░░░░░██ \n");
|
printf(" ████░░░░████░░░░░░██ \n");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user