Eğitim İçeriği
Gün 1
Modül 1: Unix Kullanıcıları İçin Python Girişi
Konu Başlıkları
Neden Python betik yazarlığı ve otomasyon için?
• betik yazarlığı için Python avantajları
• sistem yönetimi ve DevOps'ta Python kullanımı
Bash ile Python karşılaştırması • değişkenler • kontrol akışı (if, döngüler) • dosyalarla çalışma • sistem komutlarının yürütülmesi
Bir Python betiğinin yapısı • Python betiklerini çalıştırma • yorumlayıcıyı kullanma • komut satırı argümanları • argparse'e giriş
Egzersizler
Egzersiz 1 – Basit bir Bash betiğini Python'a dönüştürme
Aşağıdaki işlemleri yapan bir Bash betiği:
• bir dizindeki dosyaları listeleme
• uzantıya göre filtreleme
• istatistikleri görüntüleme
Katılımcılar betiği Python'a yeniden yazacaktır.
Egzersiz 2 – Komut satırı argümanları alan bir Python betiği Aşağıdaki işlemleri yapan bir Python betiği oluşturma: • komut satırından parametre alma • dosyaları işleme • yapılandırılmış sonuçları görüntüleme
Modül 2: Dosya ve Dizin Manipülasyonu
Konu Başlıkları
Python'da dosya sistemiyle çalışma
• dosya okuma ve yazma
• dizin gezintisi
• yollarla yönetme
pathlib modülünü kullanma • yol yönetimi • dosya işlemleri
Unix araçlarının yerine geçme • grep • find • sed • awk Python uygulamalarıyla
Egzersizler
Egzersiz 1 – Dosya sistemi tarama
Aşağıdaki işlemleri yapan bir Python betiği:
• büyük dosyaları arama
• eski dosyaları belirleme
• rapor oluşturma
Egzersiz 2 – Yapılandırma dosyalarının işlenmesi Aşağıdaki işlemleri yapan bir Python betiği: • metin dosyalarını okuma • ilgili bilgileri çıkarma • istatistikleri oluşturma
Gün 2
Modül 3: Günlük İşleme ve Metin Manipülasyonu
Konu Başlıkları
Python'da metinle çalışma
• dize işlemleri
• veri filtreleme ve dönüştürme
Düzenli ifadeler (regex) • desen tanımlama • log ayrıştırma
Shell boru hatlarının yerine geçme Örnek: grep | awk | sed | sort Python'da uygulanmış hali
Egzersizler
Egzersiz 1 – Günlük dosyası analizi
Aşağıdaki işlemleri yapan bir Python betiği:
• sistem günlüklerini okuma
• hataları belirleme
• hata sıklığını hesaplama
Egzersiz 2 – Bir shell boru hattını Python'a dönüştürme Karmaşık bir Bash boru hattının Python betiğine dönüştürülmesi
Modül 4: Sistem Komutlarının Otomasyonu
Konu Başlıkları
Python'dan shell komutlarının yürütülmesi
• subprocess modülü
• çıktının yakalanması
• hata işleme
Yönetimsel görevlerin otomatikleştirilmesi • sistem komutlarının çalıştırılması • cron işleriyle entegrasyon • tekrarlayan görevler için betik yazarlığı
Süreç yönetimi • süreçlerin izlenmesi • basit paralel yürütme
Egzersizler
Egzersiz 1 – Sistem komutları çalıştıran Python betiği
Aşağıdaki işlemleri yapan bir betik:
• Unix komutlarını çalıştırma
• çıktıyı yakalama
• rapor oluşturma
Egzersiz 2 – Hizmet izleme Aşağıdaki işlemleri yapan bir Python betiği: • bir hizmetin durumunu kontrol etme • bilgi toplama • sonuçları görüntüleme
Gün 3
Modül 5: Gelişmiş Otomasyon ve Harici Hizmetlerle Etkileşim
Konu Başlıkları
Python'da API'lerle çalışma
• HTTP isteklerine giriş
• kimlik doğrulama ve belirteçler
• JSON yanıtlarının işlenmesi
DevOps otomasyonu için Python • harici hizmetlerden veri toplama • mevcut araçlarla entegrasyon • altyapı betik yazarlığı
Egzersizler
Egzersiz 1 – API tüketen bir Python betiği
Aşağıdaki işlemleri yapan bir betik:
• bir API'den veri toplama
• bilgileri işleme
• rapor oluşturma
Egzersiz 2 – Veri toplamanın otomatikleştirilmesi Aşağıdaki işlemleri yapan bir Python betiği: • sistem bilgilerini toplama • JSON veya CSV raporu oluşturma
Modül 6: Yönetim için bir CLI Aracı Oluşturma
Konu Başlıkları
Bir Python projesinin yapılandırılması
• kod organizasyonu
• işlev yeniden kullanımı
• modüller ve paketler
Bir CLI aracı oluşturma • komut satırı argümanları • yapılandırılmış çıktı • hata işleme
Son egzersiz
Katılımcılar aşağıdaki işlemleri yapan Python ile bir CLI otomasyon aracı oluşturacaktır:
• günlük dosyalarını analiz etme
• hataları belirleme
• istatistikleri oluşturma
• komut satırından çalıştırılabilir olma
Eğitimin Sonuçları
Eğitimin sonunda katılımcılar şu yetkinliklere sahip olacaktır:
• shell betiklerini Python betiklerine dönüştürme
• sistem görevlerini otomatikleştirmek için Python kullanma
• günlükleri ve karmaşık verileri işleme
• Unix sistem yönetimi için CLI araçları oluşturma
Kurs İçin Gerekli Önbilgiler
Ön Koşullar
- Unix/Linux işletim sistemleri hakkında temel bilgi
- Komut satırı kullanımına aşinalık (shell/Bash)
- Basit shell betikleri yazma deneyimi (örneğin döngüler, koşullar, dosya işlemleri)
- Sistem yönetimi kavramlarına yönelik genel anlayış faydalıdır
- Önceki Python deneyimi gerekmez
Hedef Kitle
- Unix/Linux ortamlarında çalışan sistem yöneticileri
- Otomasyon yeteneklerini iyileştirmek isteyen DevOps mühendisleri
- Günlük görevler için shell betikleri kullanan mühendisler ve teknik uzmanlar
- Bash'ten Python'a geçişle ilgilenen BT profesyonelleri
- İş akışlarını daha verimli bir şekilde otomatikleştirmek isteyen Unix ortamlarında çalışan geliştiriciler
Danışanlarımızın Yorumları (2)
İçerlemeyle ilgili pratik alıştırmalar, her konuyu daha iyi anlamamıza gerçekten yardımcı olur. Ayrıca, dersi öncelikle ders anlatımıyla başlatıp ardından pratik alıştırmayla devam etmek, önce sunulan ders anlatımını ilişkilendirmeye ve kavramaya çok faydalıdır.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Eğitim - Introduction to Data Science and AI using Python
Yapay Zeka Çevirisi
Örnekler/alıştırmalar domenimize mükemmel şekilde uyarlanmıştır
Luc - CS Group
Eğitim - Scaling Data Analysis with Python and Dask
Yapay Zeka Çevirisi