http://www.perlmonks.org?node_id=940765


in reply to adding wtmp script into logwatch

It looks like you are invoking your script with 'perl', instead of a shell.

Since your script starts with 'perl -we', the containing file should be executed by a shell.

The other option is to get rid the the "perl -we '", and the terminating "'", then let it be invoked by 'perl'.

FYI - this is what invoking with perl looks like on Windows: (Note the similarity to your messages)

>perl -e "perl -we 'SomeJunk'" String found where operator expected at -e line 1, near "we 'SomeJunk' +" (Do you need to predeclare we?) syntax error at -e line 1, near "we 'SomeJunk'" Execution of -e aborted due to compilation errors.

            "XML is like violence: if it doesn't solve your problem, use more."

Replies are listed 'Best First'.
Re^2: adding wtmp script into logwatch
by hedkandi (Initiate) on Nov 30, 2011 at 09:09 UTC
    Hi netwallah I am using bash shell as root user on a suse linux i replaced perl -we with perl but it still gave me error:
    String found where operator expected at /usr/share/logwatch/scripts/s +ervices/my-report line 1, at end of line (Do you need to predeclare perl?) Warning: Use of "log" without parentheses is ambiguous at /usr/share/ +logwatch/scripts/services/my-report line 1. syntax error at /usr/share/logwatch/scripts/services/my-report line 1 +, next token ??? Search pattern not terminated at /usr/share/logwatch/scripts/services +/my-report line 1.
    About the terminating " " which one did u meant? is it this one?
    ;$recs = "";
      What I meant was : Get rid of the "perl -we" entirely.

      This includes the single quotes after "perl -we", and the matching one at the end of the program.

      The reason for this is that , for some reason, for this script, your system is invoking the perl interpreter automatically, instead of the expected bash (or other) shell. And 'perl' does not like a program content to start with 'perl -we'.

                  "XML is like violence: if it doesn't solve your problem, use more."