• 21-05-2013, 01:02:47
    #1
    Komutu nedir arkadaşlar bilen var mı?

    Demek istediğim /home dizininde kaç tane dizin olduğunu saymaktır.

    ls yaptığımız zaman dizinleri ve dosyaları listeliyor. Ben sadece dizinlerin sayısını öğrenmek istiyorum.
  • 21-05-2013, 01:16:07
    #2
    Sadece klasör sayısını listelemek için aşağıdaki kod bloğunu kullanabilirsiniz:

    Alıntı
    ls -la | grep ^d | wc -l
    dosyalar için d yerine - ; bağlar için l kullanabilirsiniz.
  • 21-05-2013, 01:21:36
    #3
    Üyeliği durduruldu
    ls komutu ile birlikte kullanılabilir parametrelerin tamamını aşağıdaki linkte bulabilirsin.

    http://linux.about.com/od/commands/l/blcmdl1_ls.htm
  • 21-05-2013, 02:28:46
    #4
    Boş bir zaman buldum canım sıkılmasın diye komutları bash scripte döktüm:

    #!/bin/bash
    
    #Calistirildigi alandaki dosya,dizin ve link sayisini veren bash script
    #Author: İbrahim Filazi
    #Web: www.ifilazi.net
    
    c1=$(($(ls -la | grep ^d | wc -l)-2))
    s1=" Dizin"
    echo $c1 $s1
    
    c2=$(ls -la | grep ^- | wc -l)
    s2=" Dosya"
    echo $c2 $s2
    
    c3=$(ls -la | grep ^l | wc -l)
    s3=" Link"
    echo $c3 $s3
    Dosyayı say.sh olarak kaydedip istediğiniz dizinde sh say.sh komutu ile çalıştırabilirsiniz.
  • 21-05-2013, 11:20:39
    #5
    CtrlInformatics adlı üyeden alıntı: mesajı görüntüle
    Boş bir zaman buldum canım sıkılmasın diye komutları bash scripte döktüm:

    #!/bin/bash
    
    #Calistirildigi alandaki dosya,dizin ve link sayisini veren bash script
    #Author: İbrahim Filazi
    #Web: www.ifilazi.net
    
    c1=$(($(ls -la | grep ^d | wc -l)-2))
    s1=" Dizin"
    echo $c1 $s1
    
    c2=$(ls -la | grep ^- | wc -l)
    s2=" Dosya"
    echo $c2 $s2
    
    c3=$(ls -la | grep ^l | wc -l)
    s3=" Link"
    echo $c3 $s3
    Dosyayı say.sh olarak kaydedip istediğiniz dizinde sh say.sh komutu ile çalıştırabilirsiniz.
    Gerçekten çok işime yaradı teşekkür ederim.

    Bir soru daha soracağım;

    Bulunduğumuz dizinin içeriğini göstermek istiyorum ve bu içeriğin ilk 4 girişi yazdırılacak sadece. Bunu yaparken atime kullanılması gerekli. yani bildiğim kadarıyla -lu
  • 21-05-2013, 15:06:54
    #6
    iyi adlı üyeden alıntı: mesajı görüntüle
    Gerçekten çok işime yaradı teşekkür ederim.

    Bir soru daha soracağım;

    Bulunduğumuz dizinin içeriğini göstermek istiyorum ve bu içeriğin ilk 4 girişi yazdırılacak sadece. Bunu yaparken atime kullanılması gerekli. yani bildiğim kadarıyla -lu
    Özel mesajla geçici bir kod vermiştim biraz daha geliştirdim:

    Bulunduğunuz dizindeki dosyaları değiştirilme tarihine göre eskiden yeniye sıraya dizip oluşan çıktının ilk 4 satırını alan kodlar aşağıdaki gibi:

    Değiştirilme tarihi eski olan 4 dosya:
    ls -lart | grep ^-  > /tmp/templd ; head -n 4 /tmp/templd ; read -t 0.5 ; rm -rf /tmp/templd
    Değiştirilme tarihi yeni olan 4 dosya:
    ls -lart | grep ^-  > /tmp/templd ; tail -n 4 /tmp/templd ; read -t 0.5 ; rm -rf /tmp/templd
  • 21-05-2013, 20:20:25
    #7
    Merhaba

    ls -1 | wc -l

    ile bulabilirsiniz.