/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* cd.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/20 14:27:36 by erey-bet #+# #+# */ /* Updated: 2023/03/30 15:04:09 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ #include "./builtins_private.h" int make_move(char *path, int fd) { char *join; join = ft_strjoin("/", path); join = ft_strfjoin(get_pwd(fd), join); if (chdir(join) == 0) { free(join); return (0); } free(join); write(2, "cd: No such file or directory\n", 30); return (1); } int move_folder(char **args, int fd) { char *path; if (args[1] != NULL || args[0] == NULL) { write(2, "cd: Wrong number's argument\n", 28); return (1); } path = args[0]; if (path[0] == '/' || ft_strncmp(path, "..", ft_strlen(path)) == 0) { if (chdir(path) == 0) return (0); write(2, "cd: No such file or directory\n", 30); return (1); } else return (make_move(path, fd)); }