Shell
Shell, bir işletim sistemi ile kullanıcı arasında köprü görevini gören bir yorumlayıcı programdır. Kullanıcının terminale yazdığı komutları alır, işletim sistemine iletir ve çıktıyı kullanıcıya gösterir. Yani bir tür komut satırı arayüzü (command-line interface, CLI) olarak görev yapar. Shell bir kavram değil, farklı türleri ve uygulamaları olan somut bir programdır.
-> sh (Bourne Shell) = En temel ve klasik shell, çoğu script için başlangıç noktası.
-> csh (C Shell) = C dili benzeri sözdizimi, alias ve komut geçmişi desteği.
-> ksh (Korn Shell) = Bourne Shell uyumluluğu + ek programlama özellikleri.
-> zsh (Z Shell) = Gelişmiş otomatik tamamlama, tema ve eklenti desteği.
-> bash (Bourne Again Shell) = Linux’ta en yaygın kullanılan, varsayılan shell.
Bash
-> GNU projesi tarafından geliştirilmiş bir shell türüdür.
-> Bourne Shell’in geliştirilmiş versiyonudur.
-> Çoğu Linux dağıtımında varsayılan shelldir.
-> “Bourne Again Shell” ifadesinin kısaltmasıdır. Bourne Shell’den sonra geliştirildiğinden kaynaklı bu ad
Shell & Environment
Linux’ta değişkenler her zaman aynı şekilde davranmazlar iki temel tür değişkenimiz vardır bunlar Shell ve Environment değişkenleridir.
Shell değişkenleri o oturum içerisinde aktif olan değişkenlerdir yani biz yeni bir oturum açtığımızda yok olurlar.

Yukarıdaki görselden de anlaşılacağı üzere tanımızladığımız değişkeni yeni bir oturuma geçtiğimizde yok olduğunu görebiliriz.
Burada aslında export ile tanımladığım environment değişkenini nasıl sistem içerisinde sürekli olarak var edebildiğimi görebilirsiniz.
Alias
Burada da sizlere Alias’ı anlatacağım alias bizim kullandığımız komutları kısaltmamıza yarıyan bir komuttur.

Yukarıda alias içerisindeki .bashrc dosyasına girerek bir kısa komut tanımladım.

Daha sonra nano ile düzenlediğim .bashrc dosyamı mevcut shell ortamına uyguluyorum ve çalıştırdığımda artık date olarak tanımdalığımız komutu dd yazarak çalıştırabiliyorum.



