[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Seltsame File in /usr/bin



am 26.06.2007 13:40 schrieb Frank Küster:
> Peter Velan <pv0001@dynapic.net> wrote:
>> am 26.06.2007 12:49 schrieb Helmuth Gronewold - HR4YOU GmbH:
>>> Peter Velan schrieb:
>>>> # ls /usr/bin/
>>>> -rwxr-xr-x 1 root root 24752 2007-01-30 19:51 /usr/bin/[
>>>> ...
>>>> 
>>>> Was ist das für eine seltsame Datei "["?
>>>> 
>>> es handelt sich um einen Shortcut zu /usr/bin/test.
>>> In einem Shellskript kann man dadurch sowas schreiben:
>>> if [ -z $x ];
>>> anstatt:
>>> if test -z $x
>>
>> Danke an alle!
>>
>> Die Entsprechung "[" und "test" hätte ich eher "direkt" in der Shell
>> vermutet. 
> 
> Da ist sie, auch:
> 
> ,---- man builtins
> |        test expr
> |        [ expr ]
> `----

Mein '... "direkt" in der Shell ...' bezog sich darauf, dass ich nicht
vermutet hätte, dass die bash für bestimmte Aufgaben noch weitere
executables benötigt - "builtins" verstand ich als "Eingebautes".

Sind bei der bash noch andere "builtins" über externe "executables"
realisiert?

> Dort ist es also offensichtlich genau gleich - mich würde mal
> interessieren, was der Unterschied zwischen /usr/bin/test und /usr/bin/[
> ist:
> 
> $ ls -lih /usr/bin/{test,[}
> 17847 -rwxr-xr-x 1 root root 25K 2007-01-30 19:51 /usr/bin/[
> 17578 -rwxr-xr-x 1 root root 23K 2007-01-30 19:51 /usr/bin/test

Vielleicht, weil ja "test expr" und "[ expr ]" unterschiedlich geparst
werden muss?

Gruß,
Peter



Reply to: