AUTOMATION USING BASH & EXPECT EĞİTİMİ

Etkileşimli görevleri tek komutla otomatikleştirin

Bash ve Expect ile SSH, parola değişimi ve cihaz yapılandırması gibi etkileşim gerektiren işleri senaryolaştırın.

Bash ve Expect ile otomasyon eğitimi; spawn/expect/send mantığı, desen eşleştirme, SSH/scp/FTP ve passwd otomasyonu, Bash entegrasyonu, toplu işlem ve güvenli günlüklemeyi uygulamalı öğretir.

3 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Bash betikleri ve Expect ile etkileşimli oturum otomasyonu

Bu orta seviye eğitim, insan müdahalesi bekleyen etkileşimli komut satırı programlarını Bash ve Expect ile otomatikleştirmeyi uygulamalı öğretir. Bash tarafında değişkenler, döngüler, fonksiyonlar, çıkış kodları ve cron ile zamanlama tazelenir. Expect tarafında spawn ile süreç başlatma, expect ile çıktı deseni bekleme, send ile girdi gönderme, timeout ve eof yönetimi, desen eşleştirme ve değişken kullanımı işlenir. ssh, scp, telnet, ftp ve passwd gibi parola/onay isteyen programların otomasyonu, çok sunuculu döngülerle toplu işlem, autoexpect ile betik üretimi, Bash içinden Expect çağırma (here-document) ve hata/zaman aşımı yönetimi gösterilir. interact ile devralma, günlükleme ve güvenli parola saklama ele alınır. Katılımcı eğitim sonunda elle yapılan tekrarlı etkileşimli görevleri güvenilir betiklere dönüştürebilir.

Süre ve Format

3 Gün. Her gün dört modül; her modülde kavram anlatımının ardından Linux terminalinde betik yazılıp canlı çalıştırılır.

Seviye

Orta Seviye — Bash betikleri ve Expect ile parola, SSH, Telnet ve FTP gibi etkileşimli oturumların uçtan uca otomatikleştirilmesi.

Öğrenme Metodu

Her görev önce elle yapılır, ardından aynı adımlar Bash ve Expect betikleriyle otomatikleştirilerek karşılaştırmalı pekiştirilir.

Neden Bu Eğitim?

🤖Etkileşim Otomasyonu

Parola veya onay bekleyen programları Expect ile insansız çalıştırabilir hale gelirsiniz.

⏱️Zaman Tasarrufu

Yüzlerce sunucuda tekrarlanan işi tek betikle dakikalar içinde bitirirsiniz.

🔁Tekrar Üretilebilirlik

Betikler aynı işi her seferinde aynı biçimde yaparak insan hatasını azaltır.

Anahtar Konular

expect eğitimibash otomasyonexpect scriptingssh otomasyonetkileşimli otomasyonautoexpectparola otomasyonulinux otomasyonspawn expect sendbash betiktoplu ssh
“Bir işi ikinci kez elle yapıyorsanız, aslında onu üçüncü kez otomatikleştirmemiş olmanın bedelini ödüyorsunuzdur.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Linux Kullanımı

Terminal, dosya işlemleri ve temel komutlara aşinalık beklenir.

2
Bash Temeli

Değişken ve basit döngü gibi kavramlara dair giriş bilgisi faydalıdır.

3
SSH Bilgisi

ssh ve scp ile uzak erişim kavramının bilinmesi örnekleri kolaylaştırır.

4
Lab Ortamı

expect paketi kurulabilen ve birkaç test sunucusuna erişilen bir Linux ortamı.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı, yeniden kullanılabilir Bash betikleri yazar ve bunları cron ile zamanlar.
Modül 1
Betik Temeli
  • Shebang satırı ve betiğe çalıştırma izni (chmod +x)
  • Değişken atama, tırnak kuralları ve $() ikame
  • Konumsal parametreler $1..$9 ve $@ kullanımı
  • Çıkış kodu $? ve exit ile durum döndürme
  • set -euo pipefail ile güvenli betik iskeleti
  • read ile kullanıcıdan girdi alma
Modül 2
Akış Denetimi
  • if/elif/else ve test [[ ]] koşul ifadeleri
  • for döngüsüyle liste ve dosya üzerinde yineleme
  • while read ile satır satır dosya okuma
  • case ile çoklu dallanma
  • Sunucu listesini döngüyle tek tek işleme
  • && ve || ile koşullu komut zincirleme
Modül 3
Fonksiyon ve Girdi
  • Fonksiyon tanımı ve argümanlarla çağrı
  • local ile fonksiyon içi değişken kapsamı
  • return ile fonksiyon durumu döndürme
  • getopts ile komut satırı seçeneklerinin ayrıştırılması
  • Girdi doğrulama ve kullanım (usage) mesajı
  • Ortak fonksiyonların ayrı dosyadan source edilmesi
Modül 4
Zamanlama ve Günlük
  • crontab ile betiğin periyodik çalıştırılması
  • cron ortamının sınırlı PATH sorunları
  • Çıktının >> ile günlük dosyasına yönlendirilmesi
  • logger ile sistem günlüğüne kayıt
  • date ile zaman damgalı log satırları
  • trap ile sinyal ve çıkışta temizlik işlemleri
Günün hedefiKatılımcı, Expect ile parola ve onay isteyen programları otomatik yönlendirir.
Modül 1
Expect Temeli
  • expect yorumlayıcısı ve Tcl söz diziminin temeli
  • spawn ile etkileşimli sürecin başlatılması
  • expect ile beklenen çıktı deseninin tanımı
  • send ile programa girdi ( \r dahil) gönderme
  • timeout değişkeni ve bekleme süresinin ayarı
  • set ile değişken ve $env ile ortam erişimi
Modül 2
Desen Eşleştirme
  • glob ve -re ile düzenli ifade eşleştirme
  • expect {...} blokta çoklu desen dallanması
  • eof ve timeout dallarının ele alınması
  • expect_out ile eşleşen metnin yakalanması
  • Değişken istem (prompt) desenlerinin genelleştirilmesi
  • exp_continue ile aynı blokta tekrar bekleme
Modül 3
SSH ve Uzak Erişim
  • spawn ssh ile uzak oturum başlatma
  • İlk bağlantıdaki host key onayının otomatik verilmesi
  • Uzak komut çalıştırıp çıktının beklenmesi
  • scp ile parola isteyen dosya aktarımının otomasyonu
  • telnet ile eski cihazlara erişim senaryosu
  • interact ile oturumu kullanıcıya devretme
Modül 4
Parola ve Onay
  • passwd komutuyla parola değişiminin otomasyonu
  • İki kez parola isteyen istemlerin ele alınması
  • ftp oturumunda kullanıcı/parola gönderimi
  • sudo parola isteminin beklenip yanıtlanması
  • Yes/No onaylarının otomatik verilmesi
  • Beklenmeyen istemler için savunmacı desen yazımı
Günün hedefiKatılımcı, Bash ve Expect'i birleştirerek çok sunuculu, dayanıklı otomasyon kurar.
Modül 1
Betik Üretimi
  • autoexpect ile etkileşimden otomatik betik üretme
  • Üretilen betiğin elle temizlenip genelleştirilmesi
  • Sabit değerlerin değişkene çıkarılması
  • Betiklerin parametre alacak şekilde yeniden düzenlenmesi
  • Kırılgan (sabit prompt'lu) desenlerin esnetilmesi
  • Yeniden kullanım için şablon betik yapısı
Modül 2
Bash'ten Expect
  • Bash betiği içinden expect çağrısı
  • here-document (<<EOF) ile gömülü Expect bloğu
  • expect -c ile tek satırlık Expect komutu
  • Bash değişkenlerinin Expect'e argümanla aktarımı
  • Expect içinden Bash'e çıkış kodu döndürme
  • İki dili bir iş akışında bölme stratejisi
Modül 3
Toplu ve Hata Yönetimi
  • Sunucu listesini okuyup döngüyle otomasyon
  • Her sunucu için başarı/başarısızlık kaydı
  • Zaman aşımında yeniden deneme (retry) mantığı
  • Erişilemeyen hostların atlanıp raporlanması
  • Paralel çalıştırma için xargs -P yaklaşımı
  • Özet rapor üreterek sonuçların derlenmesi
Modül 4
Güvenlik ve Günlük
  • Parolaların betik içine gömülmesinin sakıncaları
  • stty -echo ile parolanın ekranda görünmemesi
  • Mümkün olduğunda SSH anahtarıyla parolasız erişim
  • log_file ile Expect oturum günlüğü tutma
  • Hassas çıktının günlükten maskelenmesi
  • Betik dosya izinlerinin (chmod 700) sıkılaştırılması

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Bash Otomasyon

Döngü, fonksiyon ve cron ile tekrarlı görevleri Bash betiklerine dönüştürürsünüz.

✅
Expect Mantığı

spawn, expect ve send ile etkileşimli programların akışını yönlendirirsiniz.

✅
Desen Eşleştirme

Düzenli ifade ve çoklu dallarla değişken istemleri güvenle yakalarsınız.

✅
SSH Otomasyonu

Parola isteyen ssh, scp ve ftp oturumlarını insansız çalıştırırsınız.

✅
Parola Otomasyonu

passwd ve sudo gibi onay isteyen komutları betikle sürersiniz.

✅
Entegrasyon

Bash ve Expect'i here-document ile birleştirip tek iş akışı kurarsınız.

✅
Toplu İşlem

Çok sunucuda yeniden deneme ve raporlamayla dayanıklı otomasyon yaparsınız.

✅
Güvenli Betik

Parola saklama ve günlükleme ilkeleriyle betiklerinizi güvenli hale getirirsiniz.

Kimler İçin Uygundur?

  • Tekrarlı etkileşimli görevleri (toplu SSH
  • parola değişimi
  • cihaz yapılandırma) otomatikleştirmek isteyen sistem/ağ yöneticileri
  • otomasyon mühendisleri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Tekrarlı etkileşimli görevleri otomatikleştirmek isteyen sistem ve ağ yöneticileri ile otomasyon mühendisleri için uygundur.
Expect yerine neden kullanılır?
Parola veya onay bekleyen ve yalnızca etkileşimli çalışan programlar için Expect, girdiyi programatik gönderip akışı otomatikleştirir.
Tcl bilmek gerekir mi?
Hayır; Expect'in dayandığı Tcl söz diziminin ihtiyaç duyulan kısmı eğitim içinde örneklerle öğretilir.
Parolalar nasıl güvende tutulur?
Mümkünse SSH anahtarı önerilir; parola gerektiğinde ekranda gizleme, günlük maskeleme ve dosya izni sıkılaştırma gösterilir.
Eğitim sonunda sertifika veriliyor mu?
Katılım ve değerlendirme sonrası Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Automation Using Bash & Expect Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Linux ve UnixUNIX Fundamentals Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

UNIX Fundamentals Eğitimi

3 günTemelOnline / Yüz Yüze / Hibrit

UNIX mimarisi, kabuk, dosya sistemi, vi editörü, izinler, pipe ve süreç yönetimini Solaris/AIX/Linux için uygulamalı öğrenin. Temel UNIX eğitimi.

Detayları Gör →
Linux ve UnixUnix Hardening & Maintenance Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

Unix Hardening & Maintenance Eğitimi

4 günİleriOnline / Yüz Yüze / Hibrit

UNIX/Linux sunucularını PAM, SSH, SELinux, sysctl, nftables, auditd ve AIDE ile sertleştirin; CIS uyumlu yama ve bakım süreci kurun. İleri güvenlik eğitimi.

Detayları Gör →
Linux ve UnixUnix Software Management Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

Unix Software Management Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

RPM/DNF ve DPKG/APT ile paket yönetimi, depo kurma, kaynaktan derleme, bağımlılık çözümleme ve Snap/Flatpak'i uygulamalı öğrenin. Linux yazılım yönetimi eğitimi

Detayları Gör →
Linux ve UnixUNIX/Linux Korumalı Komut Dizisi Yazılımı Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

UNIX/Linux Korumalı Komut Dizisi Yazılımı Eğitimi

4 günİleriOnline / Yüz Yüze / Hibrit

Güvenli kabuk betiği yazımını öğrenin: set -euo pipefail, girdi doğrulama, komut enjeksiyonu önleme, mktemp, ayrıcalık düşürme ve shellcheck/bats ile test.

Detayları Gör →
Linux ve UnixUnix/Linux Shell Scripting Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

Unix/Linux Shell Scripting Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Kabuk betiği yazımını öğrenin: değişkenler, if/case, for/while, fonksiyonlar, diziler ve grep/sed/awk ile metin işleme. Uygulamalı Linux shell scripting eğitimi

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn