示例#1
0
t_list			*get_pipeline(char **s, t_env *e)
{
	t_list		*cmds;
	t_command	*c;

	cmds = NULL;
	c = NULL;
	while (**s && **s != ';')
	{
		while (**s == ' ')
			(*s)++;
		if (!is_a_spec_char(**s) || is_a_redirection(*s))
			c = get_command(s, e);
		else if (**s == '|')
		{
			(*s)++;
			while (**s == ' ')
				(*s)++;
			ft_lstadd_end(&cmds, ft_lstnew_noalloc(c, sizeof(t_command)));
			c = NULL;
		}
	}
	if (c)
		ft_lstadd_end(&cmds, ft_lstnew_noalloc(c, sizeof(t_command)));
	return (cmds);
}
示例#2
0
int     main(int ac, char **av)
{
    if (ac != 3)
        return 1;
    else
    {
            t_list  *mylist;
            t_list  *new_link;

            mylist = ft_lstnew(av[1], ft_strlen(av[1]));
            new_link = ft_lstnew(av[2], ft_strlen(av[2]));

            ft_lstadd_end(&mylist, new_link);

            ft_lstiter(mylist, ft_print);
    }
    return 0;
}
示例#3
0
int     main(int ac, char **av)
{
    if (ac != 3)
        return 1;
    else
    {
            t_list  *mylist;
            t_list  *new_link;

            mylist = ft_lstnew(av[1], ft_strlen(av[1]));
            new_link = ft_lstnew(av[2], ft_strlen(av[2]));
            ft_lstadd_end(&mylist, new_link);
            printf("%s:", (char *) mylist->content);
            printf("%i", (int) mylist->content_size);
            printf("->");
            printf("%s:", (char *) mylist->next->content);
            printf("%i", (int) mylist->next->content_size);
    }
    return 0;
}