Merhabalar bu yazımda kısaca Bash Shell nedir buna bakacağız.

Linux Bash Shell, genellikle sadece “bash” olarak anılan, UNIX tabanlı sistemlerde yaygın olarak kullanılan bir komut satırı arayüzüdür. “Bash”, “Bourne Again Shell” teriminin kısaltmasıdır ve Bourne Shell’in (sh) geliştirilmiş bir versiyonudur. Bash, kullanıcıların komutlar yazarak işletim sistemini ve dosyaları kontrol etmelerini sağlar.

Bash, 1989 yılında Brian Fox tarafından geliştirildi ve GNU Projesi’nin bir parçası olarak dağıtıldı. İlk olarak Unix tabanlı sistemlerde kullanılmaya başlandı, ancak zamanla Linux ve diğer Unix benzeri işletim sistemlerinde de yaygınlaştı.

Temel Özellikler

Komut Satırı Arayüzü

Bash, kullanıcının metin tabanlı komutlar girerek sistemle etkileşimde bulunduğu bir ortam sağlar. Kullanıcılar dosya işlemleri, program çalıştırma ve sistem ayarlarını değiştirme gibi işlemleri bu arayüz üzerinden gerçekleştirir.

Bahsettiğimiz Bash Terminali.

Komutlar ve Betik Yazma

Kullanıcılar tek tek komutlar girebileceği gibi, birden fazla komutu içeren betikler (scripts) de yazabilirler. Bu betikler, .sh uzantısı ile kaydedilerek çalıştırılabilir.

Değişkenler

Bash, kullanıcıların değişkenler tanımlayarak değerleri saklamalarına izin verir. Örneğin, NAME="Murat" komutu NAME adlı bir değişkene “Murat” değerini atar.

Girdi/Çıktı Yönlendirme

Bash, komutların çıktısını dosyalara veya diğer komutlara yönlendirmeyi sağlar. Örneğin, ls > dosyalar.txt komutu, ls komutunun çıktısını dosyalar.txt dosyasına yazar.

Pipelines

Komutların çıktısını bir başka komutun girdisi olarak kullanma yeteneği. Örneğin, ls | grep "txt" komutu, ls komutunun çıktısını grep komutuna aktararak, sadece “txt” içeren dosyaları gösterir.

Kontrol Yapıları

Bash, döngüler (for, while), koşullu ifadeler (if, else) ve fonksiyonlar gibi programlama yapılarını destekler. Bu, karmaşık işlemlerin otomatikleştirilmesine olanak tanır.

Komut Örnekleri

Dosya ve Dizin İşlemleri:

ls: Dizin içeriğini listeleme.

cd: Dizin değiştirme.

cp: Dosya veya dizin kopyalama.

mv: Dosya veya dizin taşıma.

rm: Dosya veya dizin silme.

Sistem Bilgisi:

uname -a: Sistem bilgilerini görüntüleme.

df -h: Disk alanı kullanımı.

top: Sistem performansını ve çalışan süreçleri izleme.

Ağ İşlemleri:

ping: Belirli bir sunucuya ping gönderme.

ifconfig: Ağ arayüzlerinin yapılandırmasını görüntüleme veya değiştirme.

ssh: Uzaktaki bir sisteme SSH ile bağlanma.

Bash Shell, güçlü ve esnek yapısı sayesinde, kullanıcıların ve sistem yöneticilerinin günlük görevlerini etkin bir şekilde gerçekleştirmelerine olanak tanır. Hem basit komutlar hem de karmaşık betikler yazılarak sistem yönetimi, dosya işlemleri ve daha birçok görev otomatikleştirilebilir. Bash’in öğrenilmesi, özellikle Linux ve Unix tabanlı sistemlerle çalışanlar için büyük avantaj sağlar.

Bash Linux sistemlerde default gelen terminaldir. Bunun gibi farklı terminaller de mevcuttur.

Sonraki yazılarımda bunlara da göz atacağız.


Murat Bilginer
21 Şubat 1992'de doğdum. Endüstri Mühendisi olarak lisansımı 2016 yılında tamamladım. Industryolog Akademi - NGenius oluşumlarının kurucusuyum. Şu anda kendi şirketim Brainy Tech ile Web ve Mobil Geliştirme, AWS, Google Cloud Platform Sistemleri için DevOps, Big Data Analiz ve Görselleştirme hizmetleri sunmakta ve Online Eğitimler vermekteyiz.