Skip to content
Snippets Groups Projects
Commit ae5b34d3 authored by 서상원's avatar 서상원
Browse files

Upload every *.c files and a compiled file

*this is the final update of assingment1->mysh-0
parent f2eadc98
No related branches found
No related tags found
No related merge requests found
mysh 0 → 100755
File added
#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{
......
......@@ -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!
if(argc < 2){
return 1;
}
return 0;
}
#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)++;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment