Bashは、スクリプト言語を含むUnixシェルです。むしろコマンドプロセッサです。コマンドの実行方法を制御し、実際に実行します。
Perl / Ruby / Pythonは汎用言語です。
シェルスクリプトが必要な場合は、Bashを使用します
より複雑なタスクが必要な場合、またはシェルに関連しない場合。Pythonなどを使用します
これらの言語を実際に比較することは決してありません。Pythonなどは移植可能です。どこでも実行できます。BashはUnix専用です。
Pythonなどには、何百万ものタスクを解決する再利用可能なライブラリがたくさんあります。
あなたが尋ねる場合、それはほとんど同じです。「ペイントを使用する場合とPhotoshopを使用する場合」
電子メールの処理には、再利用可能なライブラリが多数あるため、Rubyを使用します。
しかし、最良の方法は、bashとrubyを組み合わせることです。それは正しいでしょう。あなたがrubyでメール処理スクリプトを作成し、bashスクリプトがそのrubyスクリプトを呼び出し、他のコンマンdsを実行するように。
したがって、コマンドプロセッサが必要な場合は常にbashを使用します。UNIXコマンドを実行して制御します。
7年後の更新(2019年3月)
私の答えの大部分は変わらなかったが、それを指摘したい。
Bashは強力なスクリプト言語でもあります。テキスト処理の場合は、絶対に正当な選択が可能です。
以下のmkaitoのコメントを読んでください。それらはすべて完全に真実です。