私はPerlでヒアドキュメントを使用して簡単なHTMLファイルを作成する方法を把握しようとしているが、私は、私は把握することはできません作成HTMLファイルには、裸の単語のエラーで失敗し
Bareword found where operator expected at pscratch.pl line 12, near "<title>Test"
(Missing operator before Test?)
Having no space between pattern and following word is deprecated at pscratch.pl line 13.
syntax error at pscratch.pl line 11, near "head>"
Execution of pscratch.pl aborted due to compilation errors.
を得続けます何が問題なの?これは、その全体がスクリプトです:
use strict;
use warnings;
my $fh;
my $file = "/home/msadmin1/bin/testing/html.test";
open($fh, '>', $file) or die "Cannot open $file: \n $!";
print $fh << "EOF";
<html>
<head>
<title>Test</title>
</head>
<body>
<h1>This is a test</h1>
</body>
</html>
EOF
close($fh);
私はEOF
周りの両方の単一引用符と二重引用符を使用してみました。私はまた、役に立たなかった<>
タグのすべてをエスケープしようとしました。
このエラーを防止するには、どうすればよいですか?
EDIT
私はこれを簡素化しますそこにモジュールがあります知っているが、私はモジュールでタスクを簡素化する前に、問題がこれであるかを知りたいと思います。
EDIT 2
エラーはPerlが終了タグで/
による代用としてヒアドキュメント内のテキストを見ていることを示していると思われます。私がそれらをエスケープすれば、エラーの一部はspace between pattern and following word
に関して消え去るが、残りのエラーは残る。
削除スペース:ここ
は、様々な作業/非稼働変異体です。 – melpomene
ありがとう!私はそれを選択できるように答えてください。 – theillien
このスペースでは、シフト操作http://perldoc.perl.org/perlop.html#Shift-Operators PerlがHTMLをPerlコードとして解釈しています – ysth