VPATH := src
SRC := main.c debug_tools.c init.c signal_handling.c repl.c new_token.c \
free_token.c new_node.c free_node.c tokenizer.c parser.c \
- parse_cmd.c collect_redirs.c print_ast.c interpreter.c env.c
+ parse_cmd.c collect_redirs.c print_ast.c interpreter.c env.c \
+ get_cmd_path.c
OBJ_DIR := _obj
OBJ := $(addprefix $(OBJ_DIR)/, $(SRC:%.c=%.o))
/* By: chuhlig <chuhlig@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/08/08 16:53:39 by dkaiser #+# #+# */
-/* Updated: 2024/10/17 15:59:59 by dkaiser ### ########.fr */
+/* Updated: 2024/10/17 17:01:27 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
struct s_env *next;
} t_env;
-void getenvlst(t_env **env, char **en);
-void free_envlst(t_env **env);
-char *env_get(t_env *env, char *name);
+void getenvlst(t_env **env, char **en);
+void free_envlst(t_env **env);
+char *env_get(t_env *env, char *name);
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/06/22 17:14:49 by dkaiser #+# #+# */
-/* Updated: 2024/10/17 15:25:58 by dkaiser ### ########.fr */
+/* Updated: 2024/10/17 17:09:25 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
void print_ast(t_node *ast);
-int eval(t_node *node, t_env *env);
+int eval(t_node *node, t_env *env);
+char *get_cmd_path(char *cmd, t_env *env);
#endif
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/08/05 13:15:24 by dkaiser #+# #+# */
-/* Updated: 2024/10/17 16:01:23 by dkaiser ### ########.fr */
+/* Updated: 2024/10/17 17:05:51 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
static int eval_cmd(t_cmd *cmd, t_env *env)
{
- printf("%s\n", cmd->args[0]);
- printf("PATH=%s\n", env_get(env, "PATH"));
+ printf("%s\n", get_cmd_path(cmd->args[0], env));
return (0);
}
/* By: chuhlig <chuhlig@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/06/22 17:14:03 by dkaiser #+# #+# */
-/* Updated: 2024/10/17 15:34:02 by dkaiser ### ########.fr */
+/* Updated: 2024/10/17 17:01:45 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
int main(int argc, char *argv[], char *envp[])
{
- t_env *env;
+ t_env *env;
+
if (!argc && !argv)
return (1);
if (init())