5 puan yazan kodingwarrior 2025-04-08 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Yazının özeti

    • Bash betiklerine Ruby ekleyerek CLI aracı otomasyonunu gerçekleştirmeye yönelik çeşitli ipuçlarını tanıtıyor.
    • Başka betik dilleri de kullanılabilir, ancak Ruby'nin okunabilirliği ve esnekliği özellikle vurgulanıyor.
  • Neden Bash yerine Ruby?

    • Ruby, açık veri türleri (tamsayı, kayan noktalı sayı, dize, dizi, hash vb.) sunarak kodun okunabilirliğini artırır.
    • macOS kullanıcıları için Homebrew kuruluysa birlikte gelen Ruby sayesinde kullanım değeri yüksektir.
    • CocoaPod, Fastlane gibi build/otomasyon betiklerinde Ruby faydalı biçimde kullanılabilir.
    • JSON, CSV, YAML gibi çeşitli veri formatları yerleşik kütüphanelerle kolayca işlenebilir.
  • Ruby one-liner betikleri yazmak

    • Tek satırlık betikler ruby -e "<expression>" biçiminde çalıştırılabilir.
    • Pipe ve redirection kullanarak diğer CLI araçlarının çıktıları alınıp işlenebilir.
    • -r seçeneğiyle gerekli kütüphaneler önceden yüklenerek işlevsellik genişletilebilir.
  • Diğer CLI araçlarıyla birleştirerek kullanmak

    • AWS CLI, Git, GitHub CLI, jq, curl gibi araçlarla Ruby'yi birleştirmek, her birinin tekil güçlü yanlarını en üst düzeye çıkarabilir.
    • JSON veri işleme örneği:
      • curl ile API çağrısı yaptıktan sonra Ruby'nin JSON kütüphanesiyle veriyi parse edip belirli alanları (ör. title) yazdırmak.
    • YAML veri işleme örneği:
      • cat config.yaml ile dosyayı okuduktan sonra Ruby'nin YAML kütüphanesiyle parse ederek belirli yapılandırma değerlerini çıkarmak.
    • CLI araçlarının sonuçları Ruby ile ek olarak işlenerek daha esnek otomasyon iş akışları kurulabilir.
  • Yapılandırılmamış veri işleme (Git log örneği)

    • Her veri JSON/CSV/YAML gibi yapılandırılmış olmak zorunda değildir.
    • Ruby'nin düzenli ifadeleri ve metin işleme özellikleriyle loglar, sistem mesajları vb. satır satır okunup gerekli bilgiler çıkarılabilir.
    • Git log betiği örneği:
      • git log --oneline #{file} ile tek satırlık commit loglarını çıkarmak.
      • gum choose --limit 100 ile istenen logları etkileşimli olarak seçmek.
      • Seçilen her logdan commit hash'ini çıkarıp git show ile ayrıntılı değişiklikleri göstermek.
      • Son olarak seçilen logları kontrol listesi biçiminde yeniden düzenleyip çıktısını vermek.
  • Kapanış

    • CLI araçları ile Ruby betiklerini birleştirerek basit komut kombinasyonlarıyla güçlü otomasyon araçları oluşturulabilir.
    • Karmaşık veri işleme, log analizi ve sürüm kontrolü işleri verimli şekilde otomatikleştirilerek üretkenlik en üst düzeye çıkarılabilir.
    • Küçük bir başlangıç büyük değişimler yaratabilir; okuyucuların da kendi yan projelerine başlaması teşvik ediliyor.
    • Ek olarak Perl de faydalıdır; Perl One-Liners Guide gibi kaynaklar yardımcı olabilir.

Henüz yorum yok.

Henüz yorum yok.