Être familier avec la ligne de commande GNU/Linux ainsi qu'avec les concepts de base de la programmation est utile. Bien que ce ne soit pas une introduction à la programmation, les concepts de bases sont expliqués.
Ce document essaye d'être utile dans les situations suivantes :
Tous les languages ont leur points forts et leurs faiblesses qui les rendent plus ou moins aptes à accomplir certaines tâches. Bash est un shell dont l'objectif principal est de permettre à l'utilisateur de lancer des commandes, et de voir le résultat. Il permet aussi de créer de petits programmes qu'on appelera scripts. Ceux-ci sont couremment utilisés par les administrateurs de systèmes Unix car ils ne nécessitent pas d'environnement de développement encombrant.
Ils serait par contre stupide de faire un gros programme de gestion en bash, car le language ne dispose pas des qualités nécessaires : modularité, performances ...