У меня проблема с разбором в c с помощью sscanf
Я прочитал текст на консоли с помощью одной функции, называемой read_line()
char cm1[100],cm2[100],cm3[100]
printf("Enter command:");
read_line(var_text);
/*var_text = cat /etc/passwd | cut -f1 d: | sort */
int num = sscanf(var_text,"%s | %s | %s",cm1,cm2,cm3);
Хорошо, если я напишу var_text cat | cut | sort
в cm1 return cat, в cm2 вернут cut, а в cm3 вернут sort, но если я напишу cat /etc/passwd | cut -f1 d: | sort
, cm1 вернет cat, а cm2 и cm3 нет...
Я сделал оболочку на c, и мне нужны команды и атрибуты
Спасибо за все, и извините за этот плохой английский :)