From ae5b34d375e4ac72d8362ad954fe28cb47935e73 Mon Sep 17 00:00:00 2001
From: Sangwon Seo <swseo97@ajou.ac.kr>
Date: Wed, 11 Apr 2018 23:15:46 +0900
Subject: [PATCH] Upload every *.c files and a compiled file

*this is the final update of assingment1->mysh-0
---
 mysh           | Bin 0 -> 12300 bytes
 src/commands.c |  14 +++++++++++---
 src/main.c     |  11 ++++++++++-
 src/utils.c    |  15 ++++++++++-----
 4 files changed, 31 insertions(+), 9 deletions(-)
 create mode 100755 mysh

diff --git a/mysh b/mysh
new file mode 100755
index 0000000000000000000000000000000000000000..0f3527030ea36fd60c29e3debfce8e555908f47a
GIT binary patch
literal 12300
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
Pjv52QZX^MaIUq9tg@jFf

literal 0
HcmV?d00001

diff --git a/src/commands.c b/src/commands.c
index a8c22bc..1250114 100644
--- a/src/commands.c
+++ b/src/commands.c
@@ -1,7 +1,15 @@
+#include <stdio.h>
+#include <stdlib.h>
 #include <string.h>
+#include <unistd.h>
 
 #include "commands.h"
 
+#define true 1
+#define false 0
+
+char current_dir[1000];
+
 int do_cd(int argc, char** argv) {
   if (!validate_cd_argv(argc, argv)){
     return -1;
@@ -25,9 +33,9 @@ int do_pwd(int argc, char** argv) {
     return -1;
   }
   // TODO: Fill it!
-  char current_dir[1000];
+  
   getcwd(current_dir,1000);
-  printf("%s",current_dir);
+  printf("ajou@ajou-VirtualBox:%s$ ",current_dir);
 
   return 0;
 }
@@ -46,7 +54,7 @@ int validate_cd_argv(int argc, char** argv) {
 
 int validate_pwd_argv(int argc, char** argv) {
   // TODO: Fill it!
-  if(argc == 2 && !(strcmp(argv[0],"cd"))){
+  if(argc == 1 && !(strcmp(argv[0],"pwd"))){
 	  return true;
   }
   else{
diff --git a/src/main.c b/src/main.c
index fddc6fc..c21c0dd 100644
--- a/src/main.c
+++ b/src/main.c
@@ -5,6 +5,9 @@
 #include "commands.h"
 #include "utils.h"
 
+#define true 1
+#define false 0
+
 /**
  * Aliased command element
  *
@@ -80,6 +83,7 @@ apply_alias:
       for (int i = 0; i < n_aliased_command; ++i) {
         if (strcmp(argv[0], aliased_commands[i]->alias) == 0) {
           // TODO: fill here!
+	  strcpy(buf, aliased_commands[i] -> command);
 
           goto apply_alias;
         }
@@ -118,13 +122,18 @@ int do_alias(int argc, char** argv) {
     return -1;
 
   // TODO: Fill it!
+  char *token;
+  
 
   return 0;
 }
 
 int validate_alias_argv(int argc, char** argv) {
   // TODO: Fill it!
-  return 1;
+  if(argc < 2){
+	  return 1;
+  }
+  return 0;
 }
 
 
diff --git a/src/utils.c b/src/utils.c
index 2af60fd..1dfcf3f 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -1,17 +1,21 @@
 #include "utils.h"
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
 
 void mysh_parse_command(const char* command,
                         int *argc, char*** argv)
 {
   // TODO: Fill this!
-  *argc = 0;
-  *avgv = (char**)malloc(sizeof(char)*15);
-  *argv = (char*)malloc(sizeof(char)*15);
-
+  int i = 0;
   char *token;
   char cmd[1000];
   char seps[] = " \t\n";
 
+  *argc = 0;
+  *argv = (char**)malloc(sizeof(char)*15);
+  (*argv)[i] = (char*)malloc(sizeof(char)*15);
+
   strcpy(cmd,command);
   token = strtok(cmd,seps);
 
@@ -24,7 +28,8 @@ void mysh_parse_command(const char* command,
   while(token != NULL){
 	  strcpy((*argv)[i],token);
 	  i++;
-	  (*argv)[i] = (char*)malloc(sizeof(char)*10);
+	  (*argv)[i] = (char*)malloc(sizeof(char)*15);
+	  token = strtok(NULL,seps);
 	  (*argc)++;
   }
 }
-- 
GitLab