🚀 BAŞTAN SONA BASH SCRIPTING BÖLÜM-1: Giriş, Shebang ve İlk Betik! 🐚

Konu Özeti

Bash scripting'e giriş yapılıyor; shebang kavramı, ilk betik oluşturma ve çalıştırma izinleri adım adım anlatılıyor. Bash'in sistem yönetimi ve otomasyondaki önemi vurgulanırken, 'Hello World' örneğiyle temel komutlar ve dosya izinleri (chmod) uygulamalı olarak gösteriliyor. Serinin sonraki bölümlerinde değişkenler, kullanıcı girdisi ve komut çıktıları gibi konulara değinileceği belirtiliyor.

🚀 BAŞTAN SONA BASH SCRIPTING BÖLÜM-1: Giriş, Shebang ve İlk Betik! 🐚

Selamlar dostlar! 👋
Linux ve Unix dünyasının vazgeçilmez omurgası olan Bash Scripting'i sıfırdan zirveye, en ince ayrıntısına kadar öğreneceğimiz dev serinin ilk bölümüne hoş geldiniz! 🥳

Bu seride sistem yönetimini otomatikleştirmeyi, karmaşık terminal komutlarını tek tıkla çalışan betiklere dönüştürmeyi ve Linux'un gücünü tam anlamıyla kullanmayı adım adım kavrayacağız. Hazırsanız başlıyoruz! 🏎️💨

---

📌 1. Bash Scripting Nedir ve Neden Öğrenmeliyiz? 🤔

Bash (Bourne Again SHell), Linux ve macOS sistemlerde varsayılan olarak gelen en popüler komut satırı kabuğudur (shell).

Bash Scripting ise, terminalde sırayla çalıştırdığımız komutları bir metin dosyasına yazarak otomatik olarak yürütülmesini sağlama işlemidir.

Neden Öğrenmeliyiz?
✨ Rutin İşleri Otomatikleştirme: Yeddekleme, sunucu kurulumu, log analizi gibi işleri saniyelere indirir.
🛡️ Sistem Yönetimi (SysAdmin): Linux sunucuları yönetmenin ve DevOps süreçlerinin ilk adımıdır.
⚡ Hızlı ve Hafif: Herhangi bir derleyiciye (compiler) veya ekstra bağımlılığa ihtiyaç duymaz.

---

🛠️ 2. Shebang (`#!/bin/bash`) Nedir? ⚙️

Bir Bash betiğinin en üst satırında her zaman özel bir karakter ***** yer alır: `#!/bin/bash`

Bu satıra **Shebang** (veya Hashbang) denir.
• `#` (Hash) ve `!` (Bang) karakterlerinin birleşiminden oluşur.
• İşletim sistemine, bu dosyanın hangi kabuk (interpreter) tarafından çalıştırılacağını söyler.

Farklı Shebang Örnekleri:
- `#!/bin/bash` -> Betiğin Bash ile çalışacağını belirtir.
- `#!/bin/sh` -> Betiğin standart Bourne Shell ile çalışacağını belirtir.
- `#!/usr/bin/env python3` -> Python betikleri için kullanılır.

---

✍️ 3. İlk Betik: "Hello, World!" 🌍

Gelenektir, yeni bir dile veya araca başlarken "Hello World" yazarak siftah yaparız! 😄

Hemen `ilk_betik.sh` adında bir dosya oluşturalım:

1. Terminalde Nano veya Vim ile dosyayı açın:
nano ilk_betik.sh

2. İçine şu kodları yazın:

#!/bin/bash

# Bu bir yorum satırıdır. İşletim sistemi bu satırı yok sayar.
echo "Selam Forum Ahalisi! Bash Scripting Serisine Hoş Geldiniz! 🐚"

3. Kaydedip çıkın (Nano için: `CTRL+O`, `ENTER`, `CTRL+X`).

🔍 Kodun İncelemesi:
- `echo`: Ekrana metin bastırmak için kullanılan en temel komuttur.
- `#`: Yorum satırları bu simge ile başlar.

---

🔑 4. Çalıştırma İzinleri (Execution Permissions - `chmod`) 🔐

Oluşturduğumuz betiği doğrudan `./ilk_betik.sh` diyerek çalıştırmaya kalkarsanız şu hatayı alırsınız:
`bash: ./ilk_betik.sh: Permission denied`

Çünkü Linux'ta yeni oluşturulan dosyalar varsayılan olarak **çalıştırılabilir (executable)** iznine sahip değildir.

🚀 İzin Verme ve Çalıştırma:

1. Çalıştırma izni ekleyin:
chmod +x ilk_betik.sh

2. Betiği çalıştırın:
./ilk_betik.sh

VEYA izni değiştirmeden doğrudan Bash ile çağırın:
bash ilk_betik.sh

Ekranda mesajımızı gördüysek, ilk Bash betiğimiz başarıyla çalışmış demektir! 🎉

---

📝 Bölüm Özeti ve Gelecek Bölümde Ne Var? 🔮

Bugün Bash dünyasına ilk adımımızı attık, Shebang kavramını öğrendik, dosya izinlerini ayarladık ve ilk betiğimizi çalıştırdık! 🎈

👉 Bölüm 2'de bizi ne bekliyor?
• Değişkenler (Variables) ve Tanımlama Kuralları
• Kullanıcıdan Girdi Alma (`read`)
• Komut Çıktılarını Değişkene Atama (Command Substitution)
• Çevre Değişkenleri (Environment Variables)

Sorularınızı ve düşüncelerinizi aşağıya
yorum olarak bırakmayı unutmayın! Bir sonraki bölümde görüşmek üzere, terminalle kalın! 🐚✨

🔒 Bu içeriği görmek için giriş yapın

 
Yanıt yazmak için giriş yapmalısınız
Forum özelliklerini kullanmak ve Level 2 üyelik satın almak için hesabınıza giriş yapın.
135,050Konular
3,297,719Mesajlar
326,237Kullanıcılar
thekral21Son Üye
Üst Alt