On 17.11.2008 08:47, Ömer F. USTA wrote:
> merhabalar karşılaştığınız o rm veya ls ile ilgili sorunu for
> döngüsüyle dosyaları
> tek tek dolaşarak göstertme veya silme ile aşabilirdiniz
> yani çok fazla sayıda argüman yerine tek argüman verecek şekilde ama dosya
> sayısı kadar loop yaparak sorunu aşabilirdiniz.
> 
>      for X in "*"; do
>           ls "$X"
>      done
> gibi bişi işinizi görebilirdi

Birkac nokta:

* yukaridaki dongu sunucuyu oldurur.  50K da bile:

$ ls -1 | wc -l
50446
$ time for X in *; do ls "$X" > /dev/null; done

real    3m46.597s
user    0m50.180s
sys     2m13.370s

* Yuksek adetli dosyasi olan klasorlerde her dosyaya stat() veya lstat()
yapmayan bir yontem secin.  Asagidaki yontem optimum olmasa da yeterince
yakin:
$ time find . ! -name . -print > /dev/null

real    0m0.458s
user    0m0.100s
sys     0m0.360s

* Yeni bash versiyonlarinda "*" expand edilmiyor:
$ ls
a  b
$ echo *
a b
$ echo "*"
*
$ bash --version
GNU bash, version 3.2.33(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.

-- 
Eray
_______________________________________________
Linux E-Posta Listesi
[email protected]

Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen 
e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 
dakika içinde üyeliğinizi sonlandırabilirsiniz.
http://liste.linux.org.tr/mailman/listinfo/linux

Cevap