ぼくは、Perl があまり好きではありません(嫌いと言っても良い)。
あの、とってつけたような文法を覚えるのが、非常に苦痛です。
といったことを踏まえたうえでの回答です。
* どちらがおすすめでしょうか?
どっちでも良いと思います。
外部コマンドを呼びまくるような Perl スクリプトなら、bash で良いじゃん、とか思いますが、
Perl で書いちゃ駄目、な理由にはなりません。
Perl が得意ならば、積極的に bash を使うべき場面を思いつきません。
* メリット・デメリットについて詳しく教えてください。
システムの構築や、トラブル時に、テープや CD から OS をブートするときには、/usr/lib がマウントされていない
状況を考える必要があった時代もあったので、テープブートするときに必要なスクリプトは、
/bin に配置されているコマンドだけで書くべし(Perl は外れる)という時代もありました。
今どきは、そんなことを気にする時代じゃないと思います。
ま、その場合は、bash もアウトで、/bin/sh を使え、ということになるんですが。
* bashスクリプトにできて、Perlにできないことはありますか?
無いと思います。
テキストファイルの加工であれば、bash で sed やら awk を使った方が簡単に書ける
場面も多いと思いますが、Perl ではできない、ということではないです。
ぼく自身、必要に迫られなければ、Perl スクリプトを書きません。
正規表現やコマンドオプション程度なら、sed や getopts を使って書きますが、
どうにもならないのは、時刻を扱うとき。
現在時刻の一週間前の時刻が欲しい、とか、相対時刻を年月日時分で欲しい、とか、
そういったときには Perl に頼らざるを得ません。
プログラムをインストールして良い、と言われれば、Ruby をインストールしちゃいますが、
それを禁止されると、Perl を使うしか、選択肢がありません。
>* どちらがおすすめでしょうか?
質問の条件なら Perl
> メリット・デメリットについて詳しく教えてください。
Perlが入っていない環境がある
そういうのを意識する必要がない、関係ないのなら
デメリットはない。
> bashスクリプトにできて、Perlにできないことはありますか?
ない