I'm doing a shell from scratch. If I store all tokens in an array char**, what I supposed to put in a string of array char** when quote is empty?
Example:
input>echo "" "" "" | cat -e
output>(space)(space)(space)$
CodePudding user response:
If you're mimicking POSIX shells then each "" would tokenize to an empty string. The pipeline as a whole should tokenize to:
char *tokens[] = {"echo", "", "", "", "|", "cat", "-e"};
