Am Montag, 12. Juli 2004 06:47 schrieb Bertram Scharpf:
> Am Sonntag, 11. Jul 2004, 20:05:08 +0200 schrieb Jan Trippler:
> > if test `ls -a /voller/pfad | wc -l` -gt 2; then
> >   ..
> > fi
>
> Mir f�llt da noch etwas ein, wie man verhindert, da� das
> ganze Verzeichnis gelesen wird:
>
>     test `ls -a /voller/pfad | head -n 3 | wc -l` -gt 2

Hm, was ist schneller? Ein neuer Subprozess (der head in der Pipe) 
oder ein ls �ber das ganze Verzeichnis? Der ls �ffnet ja eigentlich 
nur die Inode des Verzeichnis und holt sich daher die 
dirent-Strukturen, oder?

W�re im Zweifelsfall auszuprobieren.

> oder noch eleganter:
>
>     test `ls -A /voller/pfad | head -n 1`
>
> Meines wissens bricht `ls' ab, wenn die Pipe geschlossen
> wird.

Dann muss aber der test ge�ndert werden:
test -z "`ls -A /voller/pfad | head -n 1`"

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org

Antwort per Email an