Le shell permet d'entrer des commandes, mais aussi de rappeler des anciennes commandes avec la fonction historique, voire de les modifier. Il est possible par exemple d'afficher les anciennes commandes, avec la commande history, ou de remonter visuellement dans l'historique des commandes avec la touche de curseur pointant vers le haut en émulation VT100.
Il est également possible d'utiliser une option très intéressante, soit la complétion des noms de fichiers. En effet, si dans votre répertoire courant se trouve un fichier nommé abcdef, il suffit de taper a puis la touche TAB et abcdef sera affiché (sous certaines conditions, notamment d'unicité). Si le terminal émet un signal sonore, il peut être indiqué de taper CTRL-D pour obtenir les différentes possibilités que le shell a trouvées. On peut même configurer tcsh pour ne proposer que les types de fichiers (différenciés par leur extension) compatibles avec le programme concerné:
complete xdvi n/*/f:*.dvi/
On peut extraire la valeur des variables d'environnement en les précédant de $. On appelle ceci une expansion. On peut les utiliser pour stocker des valeurs intermédiaires dans des scripts, ou pour communiquer des paramètres (comme le type du terminal) aux programmes exécutés. Les commandes env, set et setenv permettent de modifier les variables d'environnement (voir section personnaliser_son_environnement).
Le shell offre de plus des possibilités étendues d'édition de ligne à l'aide des touches du curseur présentes avec la plupart des émulations de terminal.