Die Shell zerlegt sich die Zeile in "Worte", die durch Leerzeichen oder Tabulatoren (Tab-Taste) getrennt sind. Das erste dieser Worte wird als Kommandoname interpretiert, d.h. die Shell sucht an bestimmten Stellen im Dateibaum nach einer ausführbaren Datei (d.h. Programm) mit diesem Namen. Die Liste der Verzeichnisse in denen gesucht werden soll, ist in der Variablen PATH abgelegt.
Alle restlichen Wörter der Eingabezeile werden in ein Array gepackt und dem Kommando als Parameter übergeben. Diese werden vom aufgerufenen Programm als Optionen oder Argumente interpretiert. Optionen sind meist einzelne Zeichen, denen ein Minuszeichen (-) vorangestellt ist. Mit ihnen kann man das Verhalten des Programms verändern. Argumente sind oft Namen von Dateien, die von dem Kommando bearbeitet werden sollen.
Es gibt nun eine Reihe von Bearbeitungsschritten, die zwischen dem Aufbrechen der Zeile in Wörter und dem eigentlichen Ausführen eines Kommandos ausgeführt werden (in der unten genannten Reihenfolge; vereinfacht). Der Sinn dieser Schritte ist, dem Benutzer eine Anpassung an seine Bedürfnisse und Tipperleichterungen sowie einige zusätzliche Möglichkeiten zu bieten. Man kann das auch im Abschnitt Lexical Structure im csh-Manual nachlesen.