Frank DiPrete fdiprete at comcast.net
Thu Jul 24 18:06:47 EDT 2008


the result of /usr/bin/id -u may be null

try tmp_var=`/usr/bin/id -u`

  if [ "$tmp" = "0" ] ; then


John Abreau wrote:
> I've got a server that's been giving strange errors lately. Most
> noticeably, when I login,
> I get several errors of the form
> 
>     -bash: [: =: unary operator expected
> 
> I've traced these to files under /etc/profile.d, and on further
> testing I find that the
> offending lines are using backquotes, e.g.
> 
>         if [ `/usr/bin/id -u` = 0 ] ; then
> 
> When I try to use backquotes on the command line on this server, I get
> no output.
> Even stranger, if I have a suspended vi job, then running something in
> backquotes
> terminates the vi process:
> 
>     $ vi foo
>     ^Z
>     [1]+  Stopped                 nvi foo
>     $ echo `echo bar`
> 
>     [1]+  Terminated              nvi foo
> 
> If I do this on my other systems, I get
> 
>     $ echo `echo bar`
>     bar
> 
> and the vi job does not terminate.
> 
> I've tried googling for these symptoms, but so far I haven't found a match.
> Has anyone else run across this odd behavior? What could be causing it?
> 
> The server with the broken behavior is running CentOS release 5.2,
> and bash is bash-3.2-21.el5.
> 
> 


More information about the gnhlug-discuss mailing list