http://qs1969.pair.com?node_id=875545


in reply to Re: sh: line 1: ,: command not found
in thread sh: line 1: ,: command not found


hi

The warning message was not display after i removed the $var variable. Its looks something wrong with the variable. The changes as below:-
system("/cygdrive/c/CLISMS.exe /port=1 /ussd=*122#"); my $credit = qx(cat /cygdrive/c/Log.txt |grep \"Baki\" |tail -1 |cut - +d, -f1); $credit =~ s/Baki: //g; $credit = floor($credit + 0.5); if ($credit < 10) { system("/cygdrive/c/CLISMS.exe /port=1 /to=0133034931 /msg=[SMS Ga +teway] URGENT!! Current prepaid credit is RM$credit.00, Please reload +"); #system("/cygdrive/c/CLISMS.exe /port=1 /to=0193301010 /msg=[SMS G +ateway] URGENT!! Current prepaid credit is RM$cedit.00, Please reload +"); }

Replies are listed 'Best First'.
Re^3: sh: line 1: ,: command not found
by ikegami (Patriarch) on Dec 06, 2010 at 05:13 UTC
    /cygdrive/c/CLISMS.exe /port=1 /to=0133034931 /msg=[SMS Gateway] URGEN +T!! Current prepaid credit is RM$credit.00, Please reload
    should surely be
    /cygdrive/c/CLISMS.exe /port=1 /to=0133034931 /msg='[SMS Gateway] URGE +NT!! Current prepaid credit is RM$credit.00, Please reload'

    What you have would have failed at the prompt too. Some of the characters you meant to pass as part of an argument apparently have a special meaning when you use them as part of a shell command.

Re^3: sh: line 1: ,: command not found
by perl_lover (Chaplain) on Dec 06, 2010 at 04:27 UTC
    I think command shell is trying to execute the value what you are passing to /cygdrive/c/CLISMS.exe. I think adding single quote around $val will help.

    use Perl;
    Perl4Everything