iam mit Perl, um einige Daten zu drucken, aber es gibt mir Fehler als kann nicht String-Terminator "EOF" überall vor EOF beiFehler in Perl kann nicht gefunden werden Zeichenfolge Terminator "EOF" irgendwo vor EOF bei /var/www/sandeep/testeof.cgi Zeile 2
Der Code zu finden ist:
#!/usr/local/bin/perl -w
print <<EOF;
hello
EOF
ERROR:
[Mon May 23 11:32:12 2016] [error] [client 192.168.10.117] Directory index forbidden by Options directive: /var/www/, referer: http://192.168.10.100/ [Mon May 23 11:32:12 2016] [error] [client 192.168.10.117] malformed header from script. Bad header=hello: testeof.cgi [Mon May 23 11:32:18 2016] [error] [client 192.168.10.117] Directory index forbidden by Options directive: /var/www/, referer: http://192.168.10.100/ [Mon May 23 11:32:18 2016] [error] [client 192.168.10.117] Can't find string terminator "EOF" anywhere before EOF at /var/www/sandeep/testeof.cgi line 2. [Mon May 23 11:32:18 2016] [error] [client 192.168.10.117] Premature end of script headers: testeof.cgi
Ich habe versucht, EOF in einfache Anführungszeichen setzen (Drucken < < 'EOF';) wie in this answer gezeigt, aber der Fehler ist der gleiche. Drucken mit dieser Methode funktioniert in anderen Dateien im selben Verzeichnis.
Ich erwähnte auch this question (Why am I getting “Can't find string terminator ”'“ anywhere before EOF at -e line 1” when I try to run a Perl one-liner on Windows?), aber in dieser Frage OP verwendet andere Methode zum Drucken und iam mit Linux (UBUNTU).
Bitte führen Sie, wo ich falsch mache?
Ich habe nicht diesen Fehler, wenn Ihr Code ausgeführt wird. Geben Sie ein minimales Beispiel an, das den Fehler tatsächlich verursacht. – Henrik
Versuchen Sie, eine Endzeile nach dem EOF hinzuzufügen. –