Go4Expert

Go4Expert (http://www.go4expert.com/)
-   Perl (http://www.go4expert.com/forums/perl/)
-   -   How to fix the syntax error issue ? (http://www.go4expert.com/forums/fix-syntax-error-issue-t25879/)

citiwang 24May2011 07:13

How to fix the syntax error issue ?
 
Code:

##### choosing which file type #################
print "Please Choose Solution ? \n" ;
print " 1) Please Input An filename ? \n" ;
print " 2) Summation Daily Total Counts  \n" ;
chomp ($line = <ftype>);
if ("$ftype" == "1") {
        print "Please input filename and file path \n" ;
        chomp ($line1 = <filepath>);
}
        if ( ! -e "$filepath" ) {
                print "************************************" ;
                print "*****Shit!! File does not exist*****" ;
                print "************************************" ;
                exit 1;
}
@datatype = ('split','licenceCounter','cdrsReceivedTotSum','cdrsCombinedSum','cdrsAggregatedSum');
    foreach (@datatype) {
        print $i;
                `gzcat $filepath | grep $i  >> $tmp_folder/$i."log"`;
}
elsif ("$ftype" == "2") {
        print " Please input date for processing \n";
        chomp ($line2 = <filedate>);  # ch_server
        print " Please input path \n";
        chomp ($line3 = <datepath>);
        $datefile =`ls -al $datepath/PM.$hostip.$filedate.*.xml.gz | wc -l`;
        if ( "$datefile" == "0" ) {
                print "Sorry !! There are no PM files under $datepath" ;
                exit 1 ;
}
@datatype = ('split','licenceCounter','cdrsReceivedTotSum','cdrsCombinedSum','cdrsAggregatedSum');
    foreach (@datatype) {
        print $i;
              `gzcat $datepath/PM.$hostip."$filedate.\*"."xml.gz" |grep $i  >> $tmp_folder/$i."log"`;
}
else {
        print "Sorry!! You don't give me the right command" ;
}

syntax error at test.pl line 25, near "elsif"
syntax error at test.pl line 30, near "else"
Missing right curly or square bracket at test.pl line 32, at end of line

sreek 24May2011 21:48

Re: How to fix the syntax error issue ?
 
I think your brackets are misaligned and indentation problem also.
Is this what you implied in code?

Code:

##### choosing which file type #################
print "Please Choose Solution ? \n" ;
print " 1) Please Input An filename ? \n" ;
print " 2) Summation Daily Total Counts  \n" ;
chomp ($line = <ftype>);
if ("$ftype" == "1") {
        print "Please input filename and file path \n" ;
        chomp ($line1 = <filepath>);
        if ( ! -e "$filepath" ) {
                print "************************************" ;
                print "*****Shit!! File does not exist*****" ;
                print "************************************" ;
                exit 1;
        }
        @datatype = ('split','licenceCounter','cdrsReceivedTotSum','cdrsCombinedSum','cdrsAggregatedSum');
        foreach (@datatype) {
                print $i;
                `gzcat $filepath | grep $i  >> $tmp_folder/$i."log"`;
        }
}
elsif ("$ftype" == "2") {
        print " Please input date for processing \n";
        chomp ($line2 = <filedate>);  # ch_server
        print " Please input path \n";
        chomp ($line3 = <datepath>);
        $datefile =`ls -al $datepath/PM.$hostip.$filedate.*.xml.gz | wc -l`;
        if ( "$datefile" == "0" ) {
                print "Sorry !! There are no PM files under $datepath" ;
                exit 1 ;
        }
        @datatype = ('split','licenceCounter','cdrsReceivedTotSum','cdrsCombinedSum','cdrsAggregatedSum');
        foreach (@datatype) {
                print $i;
              `gzcat $datepath/PM.$hostip."$filedate.\*"."xml.gz" |grep $i  >> $tmp_folder/$i."log"`;
        }
}
else {
        print "Sorry!! You don't give me the right command" ;
}



All times are GMT +5.5. The time now is 22:51.