Parsing Hints

strictly separating all commands and arguments by spaces uses up more space in the input line, but makes parsing much easier

the input line is separated into tokens

the tokens are examined for their purpose:

  • command

  • option for a command, usually indicated by a dash (-)

  • argument for a command

  • pipe operator (|)

  • redirection operators (< and >)

the parsing component produces intermediate structures that are used by the shell to set up the processes, and if necessary the communication infrastructure between processes