Exemple #1
0
int			ft_setenv(t_sh *sh, t_cmd *cmd)
{
	if (cmd)
	{
		if (!cmd->args[1])
			ft_printenv(sh);
		else if (cmd->args[1] && cmd->args[2] && cmd->args[1][0] != '-')
			return (ft_setvar(sh, cmd->args[1], cmd->args[2]));
		else if (cmd->args[1] && !cmd->args[2] && cmd->args[1][0] != '-')
			return (ft_setvar(sh, cmd->args[1], NULL));
		else
			return (-1);
	}
	return (-1);
}
Exemple #2
0
int				ft_setenv(int ac, char **av)
{
	if (!ac)
		ft_printenv();
	else if (ac > 2)
	{
		ft_putendl_fd("setenv: Too many arguments.", 2);
		exit(1);
	}
	else if (ft_strchr(av[0], '='))
	{
		ft_putendl_fd("setenv: Syntax Error.", 2);
		exit(1);
	}
	else if (ac == 2)
		ft_putenv(av[0], av[1]);
	else
		ft_putenv(av[0], "");
	return (0);
}