if statement

Thomas K Gamble tkg at lanl.gov
Thu Aug 20 17:56:06 UTC 2009


On Thursday 20 August 2009 10:29:15 am Ray Parrish wrote:
> Hello,
>
> I am having difficulty with an if statement. Here it is -
>
> # load the sleep interval in seconds from the command line.
> interval=$2;
>     # if specified interval in seconds is less than 200 or empty, set it
> to the default of 300 seconds
>     if  [ $interval == "" ]
>
>         then
>             interval=300; # five minutes default setting
>             echo "interval blank";
>     fi
>
> Here is the error I keep getting, no matter how I try to change the if
> statement around -
>
> ray at RaysComputer:~$ ~/WebChange/UpdateWebURL.sh
> http://finance.yahoo.com/q?s=MSFT
> /home/ray/WebChange/UpdateWebURL.sh: line 25: [: ==: unary operator
> expected
>
> I actually want to check to see if interval is blank or less than 200,
> but I can't seem to get that to work.
>
> This happens with a single "=" as well. What am I doing wrong here?
>
> Thanks for any help you can be. Later, Ray Parrish
>
> --
> The Future of Technology.
> http://www.rayslinks.com/The%20Future%20of%20Technology.html
> Ray's Links, a variety of links to usefull things, and articles by Ray.
> http://www.rayslinks.com
> Writings of "The" Schizophrenic, what it's like to be a schizo, and other
> things, including my poetry.
> http://www.writingsoftheschizophrenic.com

You could try '-eq' rather than '==' for the equality test, or, if you are 
testing for a null string in $interval, try 'if [ -z "$interval" ]'.

-- 
Thomas K. Gamble
System/Network Administrator, Cyber Systems Security Officer
Chemical Diagnostics and Engineering (C-CDE)
Los Alamos National Laboratory
MS-J565,p:505-665-4323 f:505-665-4267

There cannot be a crisis next week. My schedule is already full.
    Henry Kissinger




More information about the ubuntu-users mailing list