Add rm command

master
germanFid 2022-06-23 06:38:03 +03:00
parent 1def9ab053
commit c126ae749a
1 changed files with 10 additions and 5 deletions

View File

@ -91,16 +91,18 @@ int checkMajorArgumentValid(char *argument, Folder *RootFolder, Folder *CurrentF
while (istr != NULL) while (istr != NULL)
{ {
foundFlag = 1; foundFlag = 1;
for (size_t i = 0; i < CurrentFolder->folders_count_cur; i++) for (size_t i = 0; i < ptr->folders_count_cur; i++)
{ {
if (!strcmp(CurrentFolder->folders[i].filename, istr)) if (!strcmp(ptr->folders[i].filename, istr))
{ {
foundFlag = 0; foundFlag = 0;
ptr = &CurrentFolder->folders[i]; ptr = &ptr->folders[i];
break; break;
} }
} }
printf("ptr: %s\n", ptr->filename);
if (foundFlag) if (foundFlag)
{ {
int isFileFlag = 0; int isFileFlag = 0;
@ -117,7 +119,7 @@ int checkMajorArgumentValid(char *argument, Folder *RootFolder, Folder *CurrentF
{ {
char *filename = (char *)malloc(filename_lenth + 1); char *filename = (char *)malloc(filename_lenth + 1);
char *extension = (char *)malloc(extinsion_lenth + 1); char *extension = (char *)malloc(extinsion_lenth + 1);
int extFlag = 0; int extFlag = 1;
int writeCount = 0; int writeCount = 0;
@ -125,7 +127,7 @@ int checkMajorArgumentValid(char *argument, Folder *RootFolder, Folder *CurrentF
{ {
if (istr[i] == '.') if (istr[i] == '.')
{ {
extFlag = 1; extFlag = 0;
filename[writeCount + 1] = '\0'; filename[writeCount + 1] = '\0';
writeCount = 0; writeCount = 0;
continue; continue;
@ -256,11 +258,14 @@ int executeCommand(char *command, char *minorArg, Folder *majorArgFolder, File *
if (!majorArgIsFolder) if (!majorArgIsFolder)
{ {
// Работаем с файлом, удаление MajorArgFile // Работаем с файлом, удаление MajorArgFile
delete_file(majorArgFile);
} }
else else
{ {
// Работаем с папкой, рекурсивное удаление MajorArgFolder // Работаем с папкой, рекурсивное удаление MajorArgFolder
printf("=== %s\n", majorArgFolder->filename);
delete_folder(majorArgFolder);
} }
return SUCCESS; return SUCCESS;