/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* cd.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/20 14:27:36 by erey-bet #+# #+# */ /* Updated: 2023/02/28 13:13:23 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ #include "../minishell.h" int move_folder(char **args, int fd) { char *join; char *path; if (args[1] != NULL) { write(2, "cd: too many argument", 22); return (1); } path = args[0]; if (path[0] == '/' || ft_strncmp(path, "..", ft_strlen(path)) == 0) { if (chdir(path) == 0) return (0); write(2, "chdir error", 11); return (1); } else { join = ft_strjoin("/", path); join = ft_strfjoin(get_pwd(fd), join); if (chdir(join) == 0) { free(join); return (0); } free(join); write(2, "chdir error", 11); return (1); } } /*int main(int argc, char *argv[]) { char cwd[PATH_MAX]; if (getcwd(cwd, sizeof(cwd)) != NULL) { printf("%s\n", cwd); } else { perror("getcwd() error"); return 1; } move_folder(argv[1], 1); if (getcwd(cwd, sizeof(cwd)) != NULL) { printf("%s\n", cwd); } else { perror("getcwd() error"); return 1; } return 0; }*/