Bash Nedir?
Bash (Bourne Again Shell), Linux ve macOS sistemlerinde kullanılan bir komut yorumlayıcısıdır. Kullanıcının komut yazarak işletim sistemine talimat vermesini sağlar. Otomasyon, dosya yönetimi ve sistem konfigürasyonu için en yaygın shell dilidir.
1. Değişkenler ve Yazdırma
isim="Mustafa"
echo "Merhaba $isim"
# Çıktı: Merhaba Mustafa2. Kullanıcıdan Girdi Alma
echo "Adınızı girin:"
read ad
echo "Hoş geldiniz, $ad!"3. Karar Yapıları (if / else)
sayi=5
if [ $sayi -gt 3 ]; then
echo "Sayi 3'ten büyük"
else
echo "Sayi 3 veya küçük"
fi
# Karşılaştırma operatörleri:
# -eq (eşit), -ne (eşit değil)
# -lt (küçük), -le (küçük eşit)
# -gt (büyük), -ge (büyük eşit)4. Döngüler
For Döngüsü:
for i in {1..5}; do
echo "Sayi: $i"
doneWhile Döngüsü:
i=1
while [ $i -le 5 ]; do
echo "Adım: $i"
((i++))
done5. Fonksiyonlar
merhaba() {
echo "Merhaba $1"
}
merhaba "Mustafa"
# NOT: Direkt merhaba Mustafa diye çağrılır6. Dosya ve Klasör Kontrolleri
# Dosya kontrolü
if [ -f "deneme.txt" ]; then
echo "Dosya mevcut"
else
echo "Dosya yok"
fi
# Klasör kontrolü
if [ -d "/opt/test" ]; then
echo "Klasör bulundu"
fi7. Parametrelerle Çalışmak
echo "1. Argüman: $1"
echo "2. Argüman: $2"
# Komut satırından:
# bash script.sh Ankara 20258. Basit Yedekleme Scripti
#!/bin/bash
kaynak="/home/kali/Desktop/proje"
hedef="/home/kali/backup"
tarih=$(date +%Y-%m-%d)
mkdir -p "$hedef/$tarih"
cp -r "$kaynak" "$hedef/$tarih"
echo "Yedekleme tamamlandı: $hedef/$tarih"9. Bash Script Nasıl Çalıştırılır?
# 1. Script dosyası oluştur
nano script.sh
# 2. Çalıştırma izni ver
chmod +x script.sh
# 3. Çalıştır
./script.shSoru 1: Bash'te değişken tanımlamak için doğru syntax hangisidir?
Soru 2: "Sayı 5'ten büyüktür" kontrolü hangi operatörle yapılır?
Soru 3: Kullanıcıdan girdi almak için hangi komut kullanılır?
Soru 4: Bir bash script dosyasına çalıştırma izni vermek için hangi komut kullanılır?
Soru 5: For döngüsünde 1'den 10'a kadar sayıları yazdırmak için doğru syntax hangisidir?
Soru 6: Bir dosyanın var olup olmadığını kontrol etmek için hangi ifade kullanılır?
Soru 7: Bash fonksiyonuna gönderilen ilk parametre nasıl alınır?
Soru 8: Komut çıktısını bir değişkene atamak için hangisi kullanılır?
Soru 9: While döngüsünde sayı değişkenini 1 artırmak için hangisi kullanılır?
Soru 10: Bash script'inin ilk satırı (shebang) nedir?
Bash nedir?
Linux ve macOS'ta kullanılan komut yorumlayıcısı (shell)
Değişken nasıl tanımlanır?
isim="değer" (eşittir işaretinin yanında boşluk YOK)
-gt operatörü ne demek?
Greater than (büyüktür) - sayısal karşılaştırma
read komutu ne işe yarar?
Kullanıcıdan girdi almaya yarar
chmod +x ne yapar?
Dosyaya çalıştırma (execute) izni verir
For döngüsü syntax'ı?
for i in {1..10}; do echo $i; done
-f ne kontrol eder?
Dosyanın (file) var olup olmadığını kontrol eder
$1, $2 ne demek?
Script veya fonksiyona gönderilen parametreler
$(komut) ne yapar?
Komut çıktısını değişkene atar (command substitution)
Shebang nedir?
#!/bin/bash - Script'in hangi yorumlayıcıyla çalışacağını belirtir