Bash ist eine Unix-Shell, die eine Skriptsprache enthält. Es ist eher ein Befehlsprozessor. Sie steuern die Art und Weise, wie Sie Befehle ausführen, Sie führen sie tatsächlich aus.
Perl / Ruby / Python sind Allzwecksprachen.
Wenn Sie ein Shell-Skript möchten, verwenden Sie Bash
Wenn Sie eine komplexere Aufgabe haben oder nicht mit der Shell in Verbindung stehen möchten. Verwenden Sie Python usw.
Ich würde diese Sprachen eigentlich nie vergleichen. Python etc. sind portabel. Sie können sie überall ausführen. Bash ist nur für Unix.
Python usw. hat Tonnen von wiederverwendbaren Bibliotheken, die Millionen von Aufgaben lösen.
Es ist fast das gleiche, wenn Sie fragen. "Wann Sie Paint und wann Photoshop verwenden sollten"
Zum Verarbeiten von E-Mails würde ich wieder Ruby verwenden, da es viele wiederverwendbare Bibliotheken gibt.
Aber der beste Weg wäre, Bash und Ruby zu kombinieren. Das wäre richtig. Wenn Sie ein E-Mail-Verarbeitungsskript in Ruby und Bash erstellen, wird dieses Ruby-Skript aufgerufen und andere Kommandos ausgeführt.
Wenn Sie also einen Befehlsprozessor benötigen, verwenden Sie bash. Sie führen Unix-Befehle aus und steuern sie.
UPDATE nach 7 Jahren (März 2019)
Obwohl sich der Hauptteil meiner Antwort nicht geändert hat, möchte ich darauf hinweisen.
Bash ist auch eine mächtige Skriptsprache. Für die Textverarbeitung könnte es eine absolut legitime Wahl sein.
Bitte lies die Kommentare von mkaito weiter unten. Sie sind alle völlig wahr.