ハードコーディングせずに、バックスラッシュによるエスケープ文字

perl -e 'print eval qq{"$ARGV[0]"};' "hoge\n"

で、hoge のあとに改行が表示される。
eval qq{"$ARGV[0]"} --> "hoge\n" をPerlプログラムとして評価 --> hoge のあとに改行があるという文字列

perl -e 'print "$ARGV[0]";' "hoge\n"
perl -e 'print $ARGV[0];' "hoge\n"

だと、hoge\n そのものが表示されるだけ。
hoge と \ と n という、ふつうの解釈。

perl -e 'print eval "$ARGV[0]"' "hoge\n"

はかなりおしいのだけど、
eval "$ARGV[0]" --> hoge\n をPerlプログラムとして評価 --> 構文エラー

ユーザー入力を eval するのは、ほんとうは危険。