[: =: unary operator expected


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers [: =: unary operator expected
# 1  
Old 03-10-2009
[: =: unary operator expected

HI,

while running a script, I got the below mentioned error.
/bin/sh: line10 : [: = : unary operator expected. I tried to follow the solution for these kind of problem that is "QUOTING THE VARIABLES" , but it is invain. Can any one help me in resolving the issue? I am pasting the actual content of the script below.plz check it. I am having problem with the code in red.


Code:
supportedMozillaVersion() {
case "$*" in
*rv:1.[7-9]*) return 0;;
*rv:[2-9].[0-9]*) return 0;;
*rv:*) return 1;;
Mozilla\ 1.[7-9]*) return 0;;
Mozilla\ [2-9].[0-9]*) return 0;;
*) return 1;;
esac
}
 
supportedFirefoxVersion() {
case "$*" in
*Firefox\ [1-9].*) return 0;;
*Firefox/[1-9].*) return 0;;
*Firefox*) return 1;;
*rv:1.[7-9]*) return 0;;
*rv:[2-9].*) return 0;;
*rv:*) return 1;;
Mozilla*\ 1.[7-9]*) return 0;;
Mozilla*\ [2-9].[0-9]*) return 0;;
*) return 1;;
esac
}
whichBrowser=NoBrowser
case "$0" in
/*) fullpath=$0;;
*) fullpath=`pwd`/$0;;
esac
installsourcepath=`echo "$fullpath" | sed "s,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,"`
if [ "$BROWSER" ]; then
if versionString=`($BROWSER -version) 2>/dev/null`; then
case "$versionString" in
*Firefox*) if supportedFirefoxVersion "$versionString"; then
whichBrowser=Firefox
fi ;;
*Mozilla*) if supportedMozillaVersion "$versionString"; then
whichBrowser=Mozilla
fi ;;
esac
fi
fi


Last edited by radoulov; 03-10-2009 at 08:15 AM.. Reason: added code tags
# 2  
Old 03-10-2009
Please read the forum rules!
Moved to UNIX for Dummies Questions & Answers.
# 3  
Old 03-10-2009
Please run the script with trace enabled and post the entire output.
# 4  
Old 03-10-2009
[: =: unary operator expected

HI radulov,
I've run the script with trace option. and the output is attached below.
and one more thing, the browser is going to safe mode disabling all the efects before it shows the unary operator error.


Code:
+ bash -xv launchpad.sh
#!/bin/sh
# Licensed Materials - Property of IBM
# 5648-F10 (C) Copyright International Business Machines Corp. 2005
# All Rights Reserved
# US Government Users Restricted Rights - Use, duplication or disclosure
# restricted by GSA ADP Schedule Contract with IBM Corp.
    supportedMozillaVersion() {
        case "$*" in
            "rv":1.[7-9]*) return 0;;
            *"rv":[2-9].[0-9]*) return 0;;
            *"rv":*) return 1;;
            Mozilla\ 1.[7-9]*) return 0;;
            Mozilla\ [2-9].[0-9]*) return 0;;
            "*") return 1;;
        esac
    }

    supportedFirefoxVersion() {
        case "$*" in
            *Firefox\ [1-9].*) return 0;;
            *Firefox/[1-9].*) return 0;;
            *Firefox*) return 1;;
            *rv:1.[7-9]*) return 0;;
            *rv:[2-9].*) return 0;;
            *rv:*) return 1;;
            Mozilla*\ 1.[7-9]*) return 0;;
            Mozilla*\ [2-9].[0-9]*) return 0;;
            *) return 1;;
        esac
    }

    whichBrowser=NoBrowser
+ whichBrowser=NoBrowser
    case "$0" in
        /*) fullpath=$0;;
         *) fullpath=`pwd`/$0;;
    esac
+ case "$0" in
pwd
++ pwd
+ fullpath=/nfs/opt/launchpad.sh
    installsourcepath=`echo "$fullpath" | sed "s,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,"`
echo "$fullpath" | sed "s,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,"
++ echo /nfs/opt/launchpad.sh
++ sed 's,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,'
+ installsourcepath=/nfs/opt
    if [ "$BROWSER" ]; then
        if versionString=`($BROWSER -version) 2>/dev/null`; then
            case "$versionString" in
            *Firefox*) if supportedFirefoxVersion "$versionString"; then
                           whichBrowser=Firefox
                       fi ;;
            *Mozilla*) if supportedMozillaVersion "$versionString"; then
                           whichBrowser=Mozilla
                       fi ;;
            esac
        fi
    fi
+ '[' /usr/bin/mozilla ']'
($BROWSER -version) 2>/dev/null
+ versionString=
    if [ $whichBrowser = NoBrowser ]; then
        PATH="$PATH:/usr/X11R6/bin:/usr/local/bin:/usr/bin:/opt/mozilla:/usr/mozilla:/usr/mozilla/sfw/lib/mozilla"
        if versionString=`(mozilla -version) 2>/dev/null`; then
            BROWSER=mozilla; export BROWSER
            if supportedMozillaVersion "$versionString"; then
                whichBrowser=Mozilla
            fi
        fi
    fi
+ '[' NoBrowser = NoBrowser ']'
+ PATH=/sbin:/usr/sbin:/usr/local/sbin:/opt/gnome/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/bin:/opt/mozilla:/usr/mozilla:/usr/mozilla/sfw/lib/mozilla
(mozilla -version) 2>/dev/null
+ versionString=
    if [ $whichBrowser = NoBrowser ]; then
        PATH="$PATH:/opt/firefox:/usr/firefox:/usr/firefox/sfw/lib/firefox"
        if versionString=`(firefox -version) 2>/dev/null`; then
            BROWSER=firefox; export BROWSER
            if supportedFirefoxVersion "$versionString"; then
                whichBrowser=Firefox
            fi
        fi
    fi
+ '[' NoBrowser = NoBrowser ']'
+ PATH=/sbin:/usr/sbin:/usr/local/sbin:/opt/gnome/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/bin:/opt/mozilla:/usr/mozilla:/usr/mozilla/sfw/lib/mozilla:/opt/firefox:/usr/firefox:/usr/firefox/sfw/lib/firefox
(firefox -version) 2>/dev/null
+ versionString='Mozilla Firefox 2.0.0.2, Copyright (c) 1998 - 2007 mozilla.org'
+ BROWSER=firefox
+ export BROWSER
+ supportedFirefoxVersion 'Mozilla Firefox 2.0.0.2, Copyright (c) 1998 - 2007 mozilla.org'
+ case "$*" in
+ return 0
+ whichBrowser=Firefox

    LaunchPadArch=`$installsourcepath/launchpad/SetArchitecture.sh`
$installsourcepath/launchpad/SetArchitecture.sh
++ /nfs/opt/launchpad/SetArchitecture.sh
+ LaunchPadArch=s390x
    export LaunchPadArch
+ export LaunchPadArch

    eval $* exec $installsourcepath/launchpad/$whichBrowser.sh
+ eval exec /nfs/opt/launchpad/Firefox.sh
exec /nfs/opt/launchpad/Firefox.sh
++ exec /nfs/opt/launchpad/Firefox.sh
+ firefox -nosplash -safe-mode -P Profile_30206 -profile /tmp/IBM_LaunchPad_30206/Profile_30206 file:///nfs/opt/launchpad/Mozilla.html

/bin/sh: line 10: [: =: unary operator expected


Last edited by radoulov; 03-10-2009 at 09:56 AM.. Reason: added code tags
# 5  
Old 03-10-2009
Could you enable the trace for the /nfs/opt/launchpad/Firefox.sh also and repost the entire output?
And please post the entire code of launchpad.sh.
# 6  
Old 03-10-2009
HI, this is the trace for /nfs/opt/launchpad/Firefox.sh

Code:
lnxins20:/nfs/opt/launchpad # bash -xv Firefox.sh
#!/bin/sh
# Licensed Materials - Property of IBM
# 5648-F10 (C) Copyright International Business Machines Corp. 2005
# All Rights Reserved
# US Government Users Restricted Rights - Use, duplication or disclosure
# restricted by GSA ADP Schedule Contract with IBM Corp.
[ "$TMPDIR" ] || TMPDIR=/tmp
+ '[' /tmp ']'
case "$0" in
    /*) fullpath=$0;;
     *) fullpath=`pwd`/$0;;
esac
+ case "$0" in
pwd
++ pwd
+ fullpath=/nfs/opt/launchpad/Firefox.sh
installsourcepath=`echo "$fullpath" | sed "s,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,"`
echo "$fullpath" | sed "s,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,"
++ echo /nfs/opt/launchpad/Firefox.sh
++ sed 's,/\./,/,g; s,/[^/][^/]*/\.\./,/,g; s,//,/,g; s,/[^/]*$,,'
+ installsourcepath=/nfs/opt/launchpad
# fixup symlink if possible
[ -f /bin/pwd ] && installsourcepath=`cd $installsourcepath 2>/dev/null && /bin/pwd`
+ '[' -f /bin/pwd ']'
cd $installsourcepath 2>/dev/null && /bin/pwd
++ cd /nfs/opt/launchpad
++ /bin/pwd
+ installsourcepath=/nfs/opt/launchpad
TMPDIR=$TMPDIR/IBM_LaunchPad_$$
+ TMPDIR=/tmp/IBM_LaunchPad_2493
mkdir $TMPDIR >/dev/null 2>&1
+ mkdir /tmp/IBM_LaunchPad_2493
\cd $TMPDIR
+ cd /tmp/IBM_LaunchPad_2493
case "$BROWSER" in
   !) BROWSER="";;
   "") PATH="$PATH:/usr/X11R6/bin:/usr/local/bin:/opt/firefox:/usr/firefox:/usr/bin:/usr/firefox/sfw/lib/firefox"; BROWSER=firefox;;
esac
+ case "$BROWSER" in
+ PATH=/sbin:/usr/sbin:/usr/local/sbin:/opt/gnome/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/X11R6/bin:/usr/local/bin:/opt/firefox:/usr/firefox:/usr/bin:/usr/firefox/sfw/lib/firefox
+ BROWSER=firefox
LaunchPadBrowser=$BROWSER; export LaunchPadBrowser
+ LaunchPadBrowser=firefox
+ export LaunchPadBrowser
locale=`$installsourcepath/GetLocale.sh`
$installsourcepath/GetLocale.sh
++ /nfs/opt/launchpad/GetLocale.sh
+ locale=en
if [ -n "$LaunchPadBrowser" ]; then
    case "`($LaunchPadBrowser -version) 2>/dev/null`" in
        *Firefox\ 0.*) LaunchPadBrowser="";;
        *Firefox/0.*) LaunchPadBrowser="";;
        *Firefox*) :;;
        *rv:1.[7-9]*) :;;
        *rv:[2-9].*) :;;
        *rv:*) LaunchPadBrowser="";;
        Mozilla*\ 1.[7-9]*) :;;
        Mozilla*\ [2-9].[0-9]*) :;;
        *) LaunchPadBrowser="";;
    esac
fi
+ '[' -n firefox ']'
+ case "`($LaunchPadBrowser -version) 2>/dev/null`" in
($LaunchPadBrowser -version) 2>/dev/null
+ :
if [ -z "$LaunchPadBrowser" ]; then
    \cd ..
    rm -rf $TMPDIR
    $installsourcepath/NoBrowser.sh
    exit 1
fi
+ '[' -z firefox ']'
LaunchPadURL="file://$installsourcepath/Mozilla.html"
+ LaunchPadURL=file:///nfs/opt/launchpad/Mozilla.html
[ -f $HOME/.firefox-license ] && ln -sf $HOME/.firefox-license $TMPDIR 2>/dev/null
+ '[' -f /root/.firefox-license ']'
[ -f $HOME/.Xauthority ] && ln -sf $HOME/.Xauthority $TMPDIR 2>/dev/null
+ '[' -f /root/.Xauthority ']'
+ ln -sf /root/.Xauthority /tmp/IBM_LaunchPad_2493
LaunchPadOS=`uname`; export LaunchPadOS
uname
++ uname
+ LaunchPadOS=Linux
+ export LaunchPadOS
LaunchPadOSType=unix; export LaunchPadOSType
+ LaunchPadOSType=unix
+ export LaunchPadOSType
[ -n "$LaunchPadLocale" ] || LaunchPadLocale=$locale; export LaunchPadLocale
+ '[' -n '' ']'
+ LaunchPadLocale=en
+ export LaunchPadLocale
LaunchPadProfileName=Profile_$$
+ LaunchPadProfileName=Profile_2493
userprefpath=$TMPDIR/$LaunchPadProfileName
+ userprefpath=/tmp/IBM_LaunchPad_2493/Profile_2493
mkdir $userprefpath >/dev/null 2>&1
+ mkdir /tmp/IBM_LaunchPad_2493/Profile_2493
echo // >$userprefpath/prefs.js
+ echo //
LaunchPadHOME=$HOME; export LaunchPadHOME
+ LaunchPadHOME=/root
+ export LaunchPadHOME

HOME=$TMPDIR $LaunchPadBrowser -nosplash -CreateProfile "$LaunchPadProfileName $userprefpath" >/dev/null 2>&1
+ HOME=/tmp/IBM_LaunchPad_2493
+ firefox -nosplash -CreateProfile 'Profile_2493 /tmp/IBM_LaunchPad_2493/Profile_2493'

    echo 'user_pref("capability.principal.codebase.p0.granted", "UniversalXPConnect UniversalBrowserWrite");' >$userprefpath/user.js
+ echo 'user_pref("capability.principal.codebase.p0.granted", "UniversalXPConnect UniversalBrowserWrite");'
    echo 'user_pref("capability.principal.codebase.p0.id", "'${LaunchPadURL}'");' >>$userprefpath/user.js
+ echo 'user_pref("capability.principal.codebase.p0.id", "file:///nfs/opt/launchpad/Mozilla.html");'
    echo 'user_pref("browser.frames.enabled", true);' >>$userprefpath/user.js
+ echo 'user_pref("browser.frames.enabled", true);'
    echo 'user_pref("browser.shell.checkDefaultBrowser", false);' >>$userprefpath/user.js
+ echo 'user_pref("browser.shell.checkDefaultBrowser", false);'
    echo 'user_pref("javascript.enabled", true);' >>$userprefpath/user.js
+ echo 'user_pref("javascript.enabled", true);'
    echo 'user_pref("security.enable_java", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.enable_java", false);'
    echo 'user_pref("security.xpconnect.plugin.unrestricted", true);' >>$userprefpath/user.js
+ echo 'user_pref("security.xpconnect.plugin.unrestricted", true);'
    echo 'user_pref("update_notifications.enabled", false);' >>$userprefpath/user.js
+ echo 'user_pref("update_notifications.enabled", false);'
    echo 'user_pref("security.warn_entering_secure", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.warn_entering_secure", false);'
    echo 'user_pref("security.warn_leaving_secure", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.warn_leaving_secure", false);'
    echo 'user_pref("security.warn_entering_weak", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.warn_entering_weak", false);'
    echo 'user_pref("security.warn_viewing_mixed", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.warn_viewing_mixed", false);'
    echo 'user_pref("security.warn_submit_insecure", false);' >>$userprefpath/user.js
+ echo 'user_pref("security.warn_submit_insecure", false);'
    echo 'user_pref("signon.rememberSignons", false);' >>$userprefpath/user.js
+ echo 'user_pref("signon.rememberSignons", false);'
    echo 'user_pref("browser.bookmarks.added_static_root", true);' >>$userprefpath/user.js
+ echo 'user_pref("browser.bookmarks.added_static_root", true);'
    echo 'user_pref("intl.charsetmenu.browser.cache", "ISO-8859-1");' >>$userprefpath/user.js
+ echo 'user_pref("intl.charsetmenu.browser.cache", "ISO-8859-1");'
    echo 'user_pref("browser.search.opensidebarsearchpanel", false);' >>$userprefpath/user.js
+ echo 'user_pref("browser.search.opensidebarsearchpanel", false);'
    echo 'user_pref("dom.allow_scripts_to_close_windows", true);' >>$userprefpath/user.js
+ echo 'user_pref("dom.allow_scripts_to_close_windows", true);'
    echo 'user_pref("dom.disable_open_during_load", false);' >>$userprefpath/user.js
+ echo 'user_pref("dom.disable_open_during_load", false);'
    echo 'user_pref("nglayout.initialpaint.delay", 0);' >>$userprefpath/user.js
+ echo 'user_pref("nglayout.initialpaint.delay", 0);'
    echo 'user_pref("browser.link.open_external", 2);' >>$userprefpath/user.js
+ echo 'user_pref("browser.link.open_external", 2);'

exec /bin/sh -c "trap '' 1
  ( set -x
  $LaunchPadBrowser -nosplash -safe-mode -P $LaunchPadProfileName -profile $userprefpath $LaunchPadURL )
  if [ -f $userprefpath/history.dat ]; then
    ranOK=Yes
  else
    ranOK=No
  fi
  \cd ..
  rm -rf $TMPDIR
  if [ $ranOK = No ]; then
    $installsourcepath/NoBrowser.sh
    exit 2
  fi"
+ exec /bin/sh -c 'trap '\'''\'' 1
  ( set -x
  firefox -nosplash -safe-mode -P Profile_2493 -profile /tmp/IBM_LaunchPad_2493/Profile_2493 file:///nfs/opt/launchpad/Mozilla.html )
  if [ -f /tmp/IBM_LaunchPad_2493/Profile_2493/history.dat ]; then
    ranOK=Yes
  else
    ranOK=No
  fi
  \cd ..
  rm -rf /tmp/IBM_LaunchPad_2493
  if [  = No ]; then
    /nfs/opt/launchpad/NoBrowser.sh
    exit 2
  fi'
+ firefox -nosplash -safe-mode -P Profile_2493 -profile /tmp/IBM_LaunchPad_2493/Profile_2493 file:///nfs/opt/launchpad/Mozilla.html
/bin/sh: line 10: [: =: unary operator expected


Last edited by radoulov; 03-10-2009 at 10:30 AM.. Reason: added code tags
# 7  
Old 03-10-2009
The problem seem to be here:

Code:
if [  = No ]; then

Edit: See below.

Last edited by radoulov; 03-10-2009 at 10:51 AM..
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Unary operator expected

In all my Googling, this usually happens when someone is comparing a variable, and that variable is unset. That doesn't appear to be the case for me... #!/bin/bash -x while read line do f=$(echo $line | tr -s ' ' | cut -d' ' -f 3) echo $f if then echo "This... (2 Replies)
Discussion started by: jnojr
2 Replies

2. UNIX for Dummies Questions & Answers

[: -gt: unary operator expected

Hi I have problem with my script. I dont now why but i don't change anything and script stop working. this is my code: #!/bin/sh for i in `ps -A | grep pocron.sh | grep -v grep | awk '{print $2}'` do COUNT=$((COUNT+1)) done ostatnie_wykonanie=`cat porader.log`... (1 Reply)
Discussion started by: fotex
1 Replies

3. UNIX for Dummies Questions & Answers

: unary operator expected

Hiya all, Why do I get a :unary operator expected when I try to put a condition statement in my shell script (sh) like so and how to fix? if ; then echo "say hello" else echo "don't say hello" fi ? It seems if the script receives an argument it works but if I don't put an... (4 Replies)
Discussion started by: cyberfrog
4 Replies

4. Shell Programming and Scripting

unary operator expected

i=0 while Shell script reports an error "unary operator expected" pointing the above line. $i by default is 0 and holds integer value and $buf is also holding integer value. Please can some one let me know what is missing. Thanks. (1 Reply)
Discussion started by: sunrexstar
1 Replies

5. UNIX for Dummies Questions & Answers

Problem unary operator expected

I get the following error ./get_NE05: line 42: while do echo ${STRING_NAME} J=1 if ; then EXT=0$I else EXT=$I fi while do echo $I-$J #calculating last occurrence OCCURRENCE=`grep -io "${STRING_NAME}"... (3 Replies)
Discussion started by: f_o_555
3 Replies

6. UNIX for Dummies Questions & Answers

Error : -ne: unary operator expected

find . -name "*.*"|xargs grep WT:DBF_WL>> $F Wfexist=`cat $F|grep $i` echo $Wfexist if ; then echo $Wfexist echo "Workflow Exist" else touch $O chmod 777 $O echo $Wfexist echo $WfExist >> $O fi I am getting the error that -ne: unary operator expected in the line with red... (2 Replies)
Discussion started by: ritu.s
2 Replies

7. Shell Programming and Scripting

line 5: [: -gt: unary operator expected

Hello all, :confused: I am not getting this error. Pls help me. ./construct_operon.sh: line 5: #!/bin/bash # Construct Operons using gene pairs. rm -rf operons_result lines=`awk 'END {print NR}' ecoli_operons` while ; do head -1 ecoli_operons | awk '{print $1"\n"$2}' > pattern ... (5 Replies)
Discussion started by: admax
5 Replies

8. Shell Programming and Scripting

unary operator expected

Im trying to fix my /etc/weekly that rotates various logs however it does them no matter what filesize they are and i want them to only do it if there file size exceeds 2M or something. So I'm playing with a script to get the filesize using a ls -l command which works and puts the value into a... (3 Replies)
Discussion started by: timgolding
3 Replies

9. Shell Programming and Scripting

unary operator expected

hi i am trying to compare a value with value 50. but i am getting " I am using if then echo "------------" fi please help thanks in advance Satya (2 Replies)
Discussion started by: Satyak
2 Replies

10. UNIX for Dummies Questions & Answers

unary operator expected error

Hi I am doing a script like if then echo "table name dosent exist" exit fi the problem is if $table_name is null then i am getting the error Please help me Thanks in advance (2 Replies)
Discussion started by: ssuresh1999
2 Replies
Login or Register to Ask a Question