• 14-02-2018, 15:57:53
    #1
    Selamlar ,


    Linux üzerinde basit bir scripte ihtiyacım var. linuxda koşacak

    "top" komutunu her dk koşacak ve bunu txt dosyasına kaydedecek bir programa ihtiyacım var 24 saat boyunca kosup her dk kaydedecek
    bunu yapmak basit tabi
    top -n 1 > top-output.txt



    seklinde ama bu çıktıyı düzenli alamamız lazım
  • 14-02-2018, 16:16:37
    #2
    Misafir
    Merhaba bash script ile yapabilirsiniz hocam veyahut python ile.
    While döngüsü ve sleep kullanarak her dakika istediğiniz kodu execute ettirebilirsiniz ve txt çıktısını kaydedebilirsiniz.
  • 14-02-2018, 16:21:01
    #3
    TAMKoru adlı üyeden alıntı: mesajı görüntüle
    Merhaba bash script ile yapabilirsiniz hocam veyahut python ile.
    While döngüsü ve sleep kullanarak her dakika istediğiniz kodu execute ettirebilirsiniz ve txt çıktısını kaydedebilirsiniz.
    pm yollladım yardımcıolabilirsen sevinirim hocam
  • 14-02-2018, 16:26:48
    #4
    kodu kaydedip cronla dk başı cağırabilirsin diye düşünüyorum hocam
  • 14-02-2018, 16:31:09
    #5
    Misafir
    Özgür adlı üyeden alıntı: mesajı görüntüle
    Selamlar ,


    Linux üzerinde basit bir scripte ihtiyacım var. linuxda koşacak

    "top" komutunu her dk koşacak ve bunu txt dosyasına kaydedecek bir programa ihtiyacım var 24 saat boyunca kosup her dk kaydedecek
    bunu yapmak basit tabi
    top -n 1 > top-output.txt



    seklinde ama bu çıktıyı düzenli alamamız lazım
    Özgür adlı üyeden alıntı: mesajı görüntüle
    pm yollladım yardımcıolabilirsen sevinirim hocam

    1) SSH ile root giriş yapın
    2) nano /etc/rc.local girin ve en altına sh /root/a.sh ekleyin
    3) nano /root/a.sh yazın ve aşağıdaki vereceğim kodu girin ve kaydedin.
    4) Herşeyi kaydettikten sonra sunucunuza reboot atın (arkaplanda sürekli top c yi her dakika kaydedecek.
    NOT: /path/ yerine Dosyayı nereye kaydedeceğini yazınız, sonra dosya tarihine bakarak ne zaman oluşturduğuna bakabilirsiniz.

    while [ true ]; do
    sleep 60
    top -n 1 > /path/top-output$((1 + RANDOM % 999999999)).txt
    done
    • ResimBox
    ResimBox bunu beğendi.
    1 kişi bunu beğendi.
  • 14-02-2018, 16:33:11
    #6
    TAMKoru adlı üyeden alıntı: mesajı görüntüle
    1) SSH ile root giriş yapın
    2) nano /etc/rc.local girin ve en altına sh /root/a.sh ekleyin
    3) nano /root/a.sh yazın ve aşağıdaki vereceğim kodu girin ve kaydedin.
    4) Herşeyi kaydettikten sonra sunucunuza reboot atın (arkaplanda sürekli top c yi her dakika kaydedecek.
    NOT: /path/ yerine Dosyayı nereye kaydedeceğini yazınız, sonra dosya tarihine bakarak ne zaman oluşturduğuna bakabilirsiniz.

    while [ true ]; do
    sleep 60
    top -n 1 > /path/top-output$((1 + RANDOM % 999999999)).txt
    done
    çok teşekkr ederimpeki söyleyapmam lazım
    sürekli top-output içine nasıl yazdırım tek dosya olsa
  • 14-02-2018, 16:33:48
    #7
    top yerine ps aux kullanın



    dosyayı overwrite yerine append için >>
  • 14-02-2018, 16:34:55
    #8
    Misafir
    Özgür adlı üyeden alıntı: mesajı görüntüle
    çok teşekkr ederimpeki söyleyapmam lazım
    sürekli top-output içine nasıl yazdırım tek dosya olsa
    Aynı dosyaya kaydetmek içinde bu kodu kullanınız.
    while [ true ]; do
    sleep 60
    top -n 1 > /path/top-output.txt
    done
  • 14-02-2018, 16:40:17
    #9
    TAMKoru adlı üyeden alıntı: mesajı görüntüle
    Aynı dosyaya kaydetmek içinde bu kodu kullanınız.
    while [ true ]; do
    sleep 60
    top -n 1 > /path/top-output.txt
    done
    tekrar çok sağolun ilk verdiğiniz ile kod aynı
    while [ true ]; do
    sleep 60
    top -n 1 >> /path/top-output.txt
    done

    mı olması lazım direk kendi çalışacak sanırım dimi baska bir crona gerek yok sunucu ayağa kalktığı an yazar