char *my_open(t_shell *shell, t_array *array, char **env, int *indicateur) { int i; char *path; i = -1; if (all_check(shell, array, env) == 0) { if (shell->buffer[0][0] == '.') my_exec(shell, array, env); else { while (shell->tab_path[++i] != NULL) { path = my_strcat(shell->tab_path[i], "/"); if ((access( my_strcat(shell->tab_path[i], shell->buffer[0]), F_OK) == 0)) { *indicateur = *indicateur + 1; return (path); } } my_error_2(shell->buffer[0]); } } }
int main(int argc, char **argv) { s_dir *d; static s_arg *a; s_err *e; e = malloc(sizeof(s_err)); a = malloc(sizeof(s_arg)); d = malloc(sizeof(s_dir)); a = setzero(a); e = seterrzero(e); e = all_check(d, a, e, argv); if (argc > 2) argv = sort_arg(argv); //ft_putnbr(count_arg(argv)); //ft_putnbr(ft_strcmp("b.out","a")); option_error(e); //DEBUG //a = argcheck(a, argv); //remettre quand jaurais fait le tri des arguments if(!argv[a->arc]) argv[a->arc] = "."; ft_dirread(d, a, argv); //ft_check(d, argv); return(0); }