Stupid bash question

Mikkel L. Ellertson mikkel at infinity-ltd.com
Tue Dec 11 18:38:18 UTC 2007


Joe Smith wrote:
> Mikkel L. Ellertson wrote:
>> One thing that would probably help your understanding is that [ is
>> actually a command. It is usually a shell built-in command, but it
>> is also a command in /usr/bin, and is the same as the test command.
>> ...
> 
> Mmm, curious. I wonder why are they /not/ the same command?
> 
> $ type [ test
> [ is a shell builtin
> test is a shell builtin
> $ ls -li /usr/bin/{[,test}
> 1234416 -rwxr-xr-x 1 root root 31404 2007-12-05 08:25 /usr/bin/[
> 1234972 -rwxr-xr-x 1 root root 29032 2007-12-05 08:24 /usr/bin/test
> 
> I always thought that [ and test were links to the same binary.
> 
> I guess disk blocks aren't as precious as they once were ;-)
> 
> <Joe
> 
I do too. The last time I had checked there were the same command. I
guess I should have double checked before posting. It looks like
test was changed so you do not need the [ ]. You can use something
like "test $DISPLAY && echo DISPLAY is set." but not
"[ $DISPLAY && echo DISPLAY is set." or even [ $DISPLAY ] && echo
DISPLAY is set.". I guess the test man page needs to be updated, and
maybe a man page added for [.

Mikkel
-- 

  Do not meddle in the affairs of dragons,
for thou art crunchy and taste good with Ketchup!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20071211/b393b92d/attachment-0001.sig>


More information about the fedora-list mailing list