command‑line | → | spaces? argument (spaces argument)* spaces? \n |
spaces | → | [\t ]+ |
argument | → | arg‑element+ |
arg‑element | → | odd‑backslahses‑and‑literal‑quotation‑mark | even‑backslahses‑and‑literal‑quotation‑mark string‑char* even‑backslahses‑and‑literal‑quotation‑mark | [^\t\n\r ] |
odd‑backslahses‑and‑literal‑quotation‑mark | → | [\\] [\\]* \" |
even‑backslahses‑and‑literal‑quotation‑mark | → | [\\]* \" |
string‑char | → | odd‑backslahses‑and‑literal‑quotation‑mark | ([^\n\r]) − even‑backslahses‑and‑literal‑quotation‑mark |