Add homedir functionality

This commit is contained in:
g1n 2021-09-25 12:17:28 +03:00
parent 05426d867b
commit 62b718de5b
1 changed files with 8 additions and 2 deletions

View File

@ -71,6 +71,8 @@ int parse_command(char **command, int status) {
if (command[i][0] == '$') { // FIXME
where_var[i] = 1;
variable++;
} else if (command[i][0] == '~') { // FIXME
command[i] = homedir;
}
}
if (variable >= 1) {
@ -109,7 +111,8 @@ int parse_command(char **command, int status) {
return 0;
} else if (!strcmp(command[0], "cd")) {
if (position == 1) {
printf("HOME todo\n");
chdir(homedir);
getcwd(pwd, sizeof(pwd));
} else if (position >= 3) {
printf("orsh: cd: too many arguments\n");
} else {
@ -141,7 +144,10 @@ void init() { // Some initial tasks
void print_ps() {
// TODO: add parsing config file
printf("%s@%s %s> ", username, hostname, basename(pwd));
if (!strcmp(pwd, homedir)) {
printf("%s@%s %s> ", username, hostname, "~");
} else
printf("%s@%s %s> ", username, hostname, basename(pwd));
}
void signal_handler(int sig) {