Ana içeriğe geç

Shell

Kabuk

Okunuşu
şel
Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/shell

Kısaca

Shell, kullanıcının yazdığı ya da bir betikte yazılı komutları okuyup işletim sisteminden çalıştırmasını isteyen, genellikle metin arayüzlü bir programdır.

Shell (kabuk) nedir?

Shell bir komut yorumlayıcısıdır: yazdığınız komutları okur, ne demek istediğinizi çözer ve işletim sisteminden onları yerine getirmesini ister. Adını, kernel'ın etrafındaki dış katman, yani sistemle doğrudan etkileşime girdiğiniz kısım olmasından alır. Yaygın shell'ler arasında Unix benzeri sistemlerde Bash, Zsh ve fish, Windows'ta ise PowerShell vardır.

ls -l gibi bir komut yazdığınızda shell onu bir program adına ve argümanlara ayırır, o programı PATH ortam değişkeninde listelenen dizinlerde arar ve yeni bir process olarak başlatır. Shell'ler ayrıca değişkenler, bir komutun çıktısını diğerine gönderen pipe'lar (|), çıktıyı dosyaya kaydeden yönlendirme (>), komut geçmişi ve tab tamamlama gibi işi hızlandıran özellikler sunar. Komutlar bir dosyaya kaydedilip sonra çalıştırılabildiği için shell aynı zamanda otomasyon için bir betik dili işlevi görür.

Shell, sizinle işletim sistemi arasında duran bir tercüman gibidir. Siz kısa komutlarla konuşursunuz, shell onları kernel'ın anladığı system call'lara çevirir. Geliştiriciler shell'leri derleme araçlarını ve Git'i çalıştırmak, SSH üzerinden uzak sunucuları yönetmek, dağıtım betikleri yazmak ve yinelenen işleri zamanlamak için kullanır.

İnsanlar çoğu zaman shell'i terminalle karıştırır. Terminal ya da terminal öykünücüsü, metni gösteren ve tuş vuruşlarınızı gönderen penceredir; shell ise içinde çalışan ve o tuş vuruşlarını komut olarak yorumlayan programdır. Aynı terminalde farklı shell'ler çalıştırabilirsiniz ve bir shell, bir betik yürüttüğünde hiç terminal olmadan da çalışabilir.

Önemli noktalar

  • Shell komutları yorumlar ve işletim sisteminden çalıştırmasını ister.
  • Popüler shell'ler arasında Bash, Zsh, fish ve PowerShell vardır.
  • Pipe'lar, yönlendirme ve değişkenler küçük komutları güçlü olanlara dönüştürmenizi sağlar.
  • Shell betikleri derleme, yedekleme ve dağıtım gibi tekrarlayan görevleri otomatikleştirir.
  • Terminal metni gösterir; shell komutları yorumlar.

Örnek

Küçük bir Bash betiğibash
#!/usr/bin/env bash
# Variables
name="world"
echo "Hello, $name"

# Pipe: count how many .ts files are in the src folder
find src -name "*.ts" | wc -l

# Redirection: save the current date to a file
date > last-run.txt

Sık sorulan sorular

Shell ile terminal arasındaki fark nedir?

Terminal, metni gösteren ve klavye girdinizi gönderen penceredir ya da programdır. Shell ise terminalin içinde çalışan, o girdiyi okuyan ve komutları yürüten programdır.

Bash ile Zsh arasındaki fark nedir?

İkisi de çok benzer sözdizimine sahip Unix shell'leridir ve çoğu Bash betiği Zsh'de de çalışır. Zsh daha gelişmiş tab tamamlama ve istem (prompt) özelleştirmesi gibi ekstralar ekler ve macOS'un son sürümlerinde varsayılan etkileşimli shell'dir.

Shell betiği nedir?

Shell betiği, sırayla çalışan bir dizi shell komutu içeren bir metin dosyasıdır. Yazılım kurmak, derleme çalıştırmak ya da dosyaları yedeklemek gibi görevleri otomatikleştirmek için yaygın olarak kullanılır.

Sık karşılaştırılanlar

İlgili sayfalar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar