1. Bash
2. Python
Certes, il y a des shells plus complets que bash, mais bash est installé dans tout les systèmes unix récent et se suffit à lui-même.
Pour Python, il a créé pour servir de langage de shell pour Amoeba, c'est à la fois un shell surpuissant et un langage de programmation moderne, simple et élégant. C'est rare qu'une distribution GNU/Linux n'offre pas un interpréteur Python, et c'est une excellente porte d'entrée à la programmation. Le langage est lui-même très simple.
Le bouquin de Gérard Swinnen n'est pas une référence sur Python -comme celui de Tarek Ziadé p. ex.- mais il vise justement les personnes qui n'ont jamais fait de programmation (ici des lycéens) et reste très abordable.
http://www.cifen.ulg.ac.be/inforef/swi/python.htm