LINUX/UNIX SHELL PROGRAMMING EĞİTİMİ

Kabuktan komut dizilerine, otomasyonu siz yazın

Bash ve POSIX sh ile değişken genişletme, döngüler, fonksiyonlar, sed/awk ve güvenilir yönetim betikleri geliştirin.

Linux/UNIX kabuk programlamayı değişken genişletme, akış kontrolü, fonksiyonlar, sed/awk metin işleme ve set -euo pipefail ile güvenli otomasyon odağında uygulamalı olarak öğreten orta seviye eğitim.

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

Eğitim Hakkında

POSIX uyumlu kabuk betikleriyle sistem görevlerini otomatikleştirme

Bu eğitim, Linux ve UNIX ortamlarında kabuk (shell) programlamayı uçtan uca ele alır. Değişken genişletme ve tırnak kuralları, parametre genişletme (${var:-default}), komut ikamesi, test ve [[ ]] koşulları, for/while/until döngüleri, case yapıları ve fonksiyonlarla modüler betikler yazmayı öğrenirsiniz. sed, awk, grep, cut ve tr ile metin işleme; borular (pipe), yönlendirme (2>&1), here-document ve process substitution gibi akış mekanizmalarını uygulamalı olarak kullanırsınız. Ayrıca trap ile sinyal yakalama, çıkış kodları, getopts ile argüman ayrıştırma ve set -euo pipefail ile güvenli betik yazımını kavrarsınız.

Süre ve Format

3 Gün. Her gün dört modül; teorik anlatımı takiben terminal üzerinde betik yazma ve hata ayıklama uygulamaları yapılır.

Seviye

Orta Seviye — POSIX kabuğu ve Bash ile değişkenler, akış kontrolü, metin işleme ve otomasyon betikleri yazımını kapsar.

Öğrenme Metodu

Her kavram, canlı bir Bash oturumunda yazılan ve shellcheck ile denetlenen gerçek betikler üzerinde uygulanarak pekiştirilir.

Neden Bu Eğitim?

⚙️Otomasyon Gücü

Yedekleme, log döndürme ve dağıtım gibi tekrar eden görevleri tek bir betikle otomatikleştirirsiniz.

🧩Taşınabilir Kod

POSIX sh uyumluluğu sayesinde betikleriniz Linux, BSD ve diğer UNIX sistemlerinde sorunsuz çalışır.

🛡️Güvenli Betik

set -euo pipefail, tırnak kuralları ve trap ile hataya ve enjeksiyona dayanıklı betikler üretirsiniz.

Anahtar Konular

shell programlama eğitimibash scriptinglinux kabuk betiğiposix shsed awk eğitimishell otomasyongetoptsbash fonksiyonlarılinux betik yazımı
“İyi bir kabuk betiği, bir kez yazılır ve binlerce kez güvenle çalışır.”

Ön Koşullar

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

1
Komut Satırı

ls, cd, cp, mv, cat gibi temel kabuk komutlarını kullanabiliyor olmak faydalıdır.

2
Dosya Sistemi

Dizin yapısı, izinler (chmod/chown) ve mutlak/göreli yol kavramlarına aşinalık beklenir.

3
Metin Editörü

vim veya nano ile dosya düzenleme yapabilmek pratikleri kolaylaştırır.

4
Lab Ortamı

Bash 4+ kurulu bir Linux terminali veya WSL erişimi gereklidir.

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 hedefi, >>, 2>, 2>&1 ve &> ile akış yönlendirme
Modül 1
Kabuk Mimarisi
  • sh, bash, dash, zsh kabukları ve login/non-login, interactive/non-interactive farkları
  • Komut ayrıştırma sırası: alias, tokenleştirme, genişletme, ikame
  • /etc/profile, ~/.bashrc, ~/.bash_profile başlatma dosyalarının yüklenme sırası
  • shebang satırı (#!/usr/bin/env bash) ve betiğin yürütülmesi
  • env, export ve kabuk ortam değişkenleri ($PATH, $HOME, $IFS)
  • builtin ile dış komut ayrımı ve type, command -v kullanımı
Modül 2
Değişkenler ve Genişletme
  • Değişken atama (var=deger) ve boşluk kuralı, yerel (local) değişkenler
  • Parametre genişletme: ${var:-varsayilan}, ${var:=ata}, ${var:?hata}
  • Alt dize ve uzunluk: ${var:offset:len}, ${#var}
  • Kalıpla kırpma: ${var#önek}, ${var%%sonek}, ${var/eski/yeni}
  • Diziler: ${dizi[@]}, ${!dizi[@]} ve ilişkisel diziler (declare -A)
  • Komut ikamesi $(komut) ve aritmetik genişletme $((a+b))
Modül 3
Tırnaklama ve Sözcük Bölme
  • Tek tırnak, çift tırnak ve ters eğik çizgi ile kaçış farkları
  • IFS değişkeni ve sözcük bölme (word splitting) davranışı
  • Çift tırnaksız genişletmenin yol adı genişletmesine (glob) açtığı riskler
  • "$@" ile "$*" farkı ve argümanların doğru aktarımı
  • glob desenleri: *, ?, [a-z], extglob ile @(), +(), !()
  • noglob ve set -f ile glob genişletmesini kapatma
Modül 4
Giriş/Çıkış Yönlendirme
  • stdin, stdout, stderr dosya tanımlayıcıları (0,1,2)
  • Boru hatları (pipe) ve pipefail ile hata yayılımı
  • here-document (<<EOF) ve here-string (<<<) kullanımı
  • read ile stdin'den satır okuma ve -r, -p, -a seçenekleri
  • exec ile kalıcı yönlendirme ve dosya tanımlayıcı açma
Günün hedefiKatılımcı koşullu yapıları, döngüleri ve yeniden kullanılabilir fonksiyonlarla modüler betikler kurar.
Modül 1
Koşullar ve Testler
  • test, [ ] ve [[ ]] arasındaki farklar ve tercih kriterleri
  • Dosya testleri: -f, -d, -e, -r, -w, -x, -s, -nt, -ot
  • Dize karşılaştırma: =, !=, -z, -n ve desen eşleme [[ $x == a* ]]
  • Sayısal karşılaştırma: -eq, -ne, -lt, -gt ve (()) aritmetik testi
  • Mantıksal operatörler &&, || ve kısa devre değerlendirmesi
  • case ... esac yapısı ile çoklu dal eşleştirme
Modül 2
Döngüler
  • for döngüsü: liste üzerinde, C-tarzı (()), dizi elemanları üzerinde
  • while ve until döngüleri ve okuma döngüsü while read -r satir
  • break ve continue ile akış kontrolü, çok seviyeli break N
  • IFS ayarlayarak satır/alan bazlı okuma güvenliği
  • Sonsuz döngü ve çıkış koşulu tasarımı
  • Döngü içinde alt kabuk (subshell) tuzağı ve değişken kapsamı
Modül 3
Fonksiyonlar
  • Fonksiyon tanımı, çağrımı ve $1, $2, $# argüman erişimi
  • return ile çıkış kodu, değer döndürmek için echo/printf kullanımı
  • local ile değişken kapsamını sınırlama ve ad çakışmalarını önleme
  • Fonksiyon kütüphanesi oluşturma ve source ile içe aktarma
  • Özyinelemeli (recursive) fonksiyon ve derinlik sınırı
  • Varsayılan parametre ve değişken sayıda argüman ("$@") işleme
Modül 4
Argüman Ayrıştırma
  • getopts ile kısa seçenek (-v, -o deger) ayrıştırma döngüsü
  • OPTARG, OPTIND değişkenleri ve hata bayrağı yönetimi
  • shift ile konumsal parametreleri kaydırma
  • Uzun seçenekler (--verbose) için manuel while/case deseni
  • Kullanım (usage) fonksiyonu ve -h/--help çıktısı
  • Zorunlu argüman doğrulama ve eksik parametre hata mesajları
Günün hedefiKatılımcı metin akışlarını sed/awk ile dönüştürür ve trap, hata yönetimiyle üretime hazır betikler yazar.
Modül 1
grep ve Düzenli İfadeler
  • BRE, ERE ve PCRE farkları, grep -E ve grep -P seçenekleri
  • Çapa (^, $), karakter sınıfları [[:digit:]] ve niceleyiciler *, +, ?
  • grep -o, -c, -n, -v, -r ve --include ile dosya filtreleme
  • Gruplama ve geri referans ile eşleşme yakalama
  • Büyük/küçük harf duyarsız arama (-i) ve kelime sınırı (\b)
  • Çoklu desen (-e) ve sabit dize arama (grep -F)
Modül 2
sed ile Akış Düzenleme
  • Yerine koyma: s/eski/yeni/g ve bayraklar (g, I, p, sayı)
  • Adres aralıkları: satır no, /desen/, $ ve aralık 1,5
  • Silme (d), yazdırma (p) ve -n ile sessiz mod
  • Yerinde düzenleme sed -i ve yedek uzantısı
  • Hold space, N, D, P ile çok satırlı işlemler
  • a\, i\, c\ ile satır ekleme, araya sokma ve değiştirme
Modül 3
awk ile Alan İşleme
  • Alan değişkenleri $1..$NF, NR, FS, OFS ve ayırıcı ayarları
  • BEGIN/END blokları ve ara toplam/raporlama desenleri
  • Desen-eylem yapısı ve koşullu satır işleme
  • Aritmetik, ilişkisel diziler (sayac[$1]++) ve gruplama
  • printf ile biçimli çıktı ve sütun hizalama
  • Birden çok dosyayı FNR/FILENAME ile ayırarak işleme
Modül 4
Güvenli Betik ve Hata Yönetimi
  • set -e, set -u, set -o pipefail ile katı hata modu
  • trap ile EXIT, ERR, INT, TERM sinyallerini yakalama ve temizlik
  • mktemp ile güvenli geçici dosya ve dizin oluşturma
  • Çıkış kodları, $? kontrolü ve anlamlı hata mesajları
  • shellcheck ile statik analiz ve yaygın uyarıların giderilmesi
  • Kilit dosyası (flock) ile tek örnek (single-instance) çalıştırma

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Değişken Hakimiyeti

Parametre genişletme ve tırnak kurallarını doğru kullanarak hatasız betikler yazarsınız.

✅
Akış Kontrolü

Koşul, döngü ve case yapılarıyla karmaşık iş akışlarını kodlayabilirsiniz.

✅
Modüler Tasarım

Fonksiyonlar ve kütüphanelerle yeniden kullanılabilir betik bileşenleri üretirsiniz.

✅
Metin İşleme

sed, awk ve grep ile log ve veri dosyalarını otomatik olarak dönüştürürsünüz.

✅
Argüman İşleme

getopts ile profesyonel komut satırı arayüzleri tasarlarsınız.

✅
Güvenli Betik

set -euo pipefail ve trap ile üretime hazır, dayanıklı betikler geliştirirsiniz.

✅
Taşınabilirlik

POSIX sh uyumlu kod yazarak farklı UNIX sistemlerinde çalışan betikler üretirsiniz.

✅
Hata Ayıklama

set -x ve shellcheck ile betiklerinizi hızla teşhis edip düzeltirsiniz.

Kimler İçin Uygundur?

  • Sistem yöneticileri
  • DevOps mühendisleri
  • Linux/UNIX ortamında tekrar eden görevleri otomatikleştirmek isteyen geliştiriciler için uygundur. Temel komut satırı deneyimi olan herkes katılabilir

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Linux/UNIX ortamında tekrar eden görevleri otomatikleştirmek isteyen sistem yöneticileri, DevOps mühendisleri ve geliştiriciler için uygundur.
Eğitim için önceden programlama bilmek gerekir mi?
Hayır, ancak temel komut satırı kullanımı (ls, cd, cp) beklenir; programlama kavramları eğitim içinde kabuk bağlamında anlatılır.
Bash dışında başka kabuklar işlenir mi?
Evet, POSIX sh ve dash uyumluluğu ele alınır; betiklerin taşınabilirliği için Bash'e özgü özellikler ayrıca belirtilir.
Eğitimde metin işleme araçları öğretiliyor mu?
Evet, grep, sed ve awk ile düzenli ifadeler, alan işleme ve akış düzenleme kapsamlı şekilde uygulanır.
Eğitim sonunda sertifika verilir mi?
Evet, başarıyla tamamlayan katılımcılara 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. Linux/UNIX Shell Programming 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 UnixCreating and Managing Unix File Systems Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

Creating and Managing Unix File Systems Eğitimi

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

Unix/Linux dosya sistemlerini oluşturup yönetin: bölümleme, ext4/XFS, mount ve fstab, LVM, snapshot, kota, mdadm RAID ve fsck onarımı. Uygulamalı DVA eğitimi.

Detayları Gör →
Linux ve UnixDB for Linux, UNIX, and Windows Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

DB for Linux, UNIX, and Windows Eğitimi

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

IBM Db2 for Linux, UNIX and Windows temellerini öğrenin: instance ve veritabanı oluşturma, CLP, SQL, tablespace ve bufferpool yönetimi. Uygulamalı DVA eğitimi.

Detayları Gör →
Linux ve UnixDB for LUW: Administration in Linux/UNIX/Windows Environments Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

DB for LUW: Administration in Linux/UNIX/Windows Environments Eğitimi

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

Db2 for LUW yönetiminde ustalaşın: yedekleme/kurtarma, explain plan performans ayarı, güvenlik, LBAC ve HADR yüksek erişilebilirlik. İleri düzey DVA eğitimi.

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

Debian Yönetimi Eğitimi

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

Debian sunucu yönetimini uygulamalı öğrenin: apt/dpkg paket yönetimi, systemd, ağ yapılandırması, UFW güvenlik duvarı, cron ve otomatik bakım. DVA Linux eğitimi

Detayları Gör →
Linux ve UnixDeploying and Administering SUSE Linux Enterprise High Availability (SLE321V15) Eğitimi
Sistem ve Sunucu Yönetimi Eğitimleri

Deploying and Administering SUSE Linux Enterprise High Availability (SLE321V15) Eğitimi

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

SUSE Linux Enterprise High Availability (SLE321V15) eğitimi: Pacemaker, Corosync, SBD/STONITH, DRBD ve OCFS2 ile küme kurulumu ve yönetimi.

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