ユーザーにファイル名を入力してもらい、プログラムにファイルの内容を出力させたい。
「引用符で囲まれていない文字列は将来の予約語と衝突する可能性があります」と「グローバル シンボル $filename には明示的なパッケージ名が必要です。
use strict;
use warnings;
print 'Enter file name: ';
my $fileName = <STDIN>;
chomp($fileName);
open(fh, $filename or die $!);
また、ファイルハンドルが変数ではないのはなぜですか (実際には、ここにあるように、変数であるかどうかを見た例によって異なります)。