Command Line Grammar

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