Linux shell scripting, Linux ve Unix tabanlı işletim sistemlerinde otomatik görevleri ve süreçleri gerçekleştirmek için kullanılan betik dili yazma pratiğidir. Kullanıcının komutları yazarak işletim sistemiyle etkileşime girdiği bir arayüzdür. Shell scripting, ayrıca bu komutları bir dosyada toplayarak, daha karmaşık işlemleri ve otomasyonları daha kolay ve hızlı bir şekilde gerçekleştirmeye olanak tanır.
Shell scriptlerinin temel amacı,ayrıca tekrarlayan görevleri otomatize etmek, sistem yönetimi işlemlerini basitleştirmek ve kullanıcıların karmaşık işlemleri daha hızlı ve verimli bir şekilde gerçekleştirmesine yardımcı olmaktır.
Linux shell scripting ile ilgili temel bileşenler şunlardır:
- Shell: Kullanıcıların işletim sistemiyle etkileşime girdiği metin tabanlı arayüz. Bash (Bourne-Again SHell), sh (Bourne Shell), ksh (Korn Shell), csh (C Shell), tcsh (TENEX C Shell) ve zsh (Z Shell) gibi çeşitli shell türleri bulunmaktadır.
- Komutlar: Shell scriptlerinde kullanılan temel işlemleri gerçekleştiren komutlardır. Örneğin,
echo
,cp
,mv
,rm
,grep
,awk
,sed
vecut
gibi komutlarla dosyaları yönetebilir ve metinleri işleyebilirsiniz. - Değişkenler: Shell scriptlerinde kullanılan ve değerlerin saklandığı geçici bellek alanlarıdır. Değişkenler,
$
işareti ile kullanılır. Örneğin:my_variable="Hello, World!"
veecho $my_variable
. - Kontrol yapıları: Shell scriptlerinde koşullu ifadeler ve döngüler kullanarak karmaşık mantık ve işlemler gerçekleştirilebilir.
if
,elif
,else
,case
,for
,while
veuntil
gibi yapılar kullanılabilir. - Fonksiyonlar: Shell scriptlerinde tekrarlayan kod parçalarını yeniden kullanmak için, tanımlamak ve çalıştırmak için kullanabiliriz.
- Kullanıcı girdisi:
read
komutu gibi yöntemlerle kullanıcıdan girdi alınarak, dinamik ve etkileşimli scriptler oluşturulabiliriz. - Dosya ve dizin işlemleri: Shell scriptlerinde dosya ve dizinlerle ilgili işlemler gerçekleştirilebiliriz, örneğin dosyaları kopyalama, taşıma, silme, okuma ve yazma gibi.
- Hata ayıklama (debugging) ve loglama: Shell scriptlerinin doğru ve hatasız çalışmasını sağlamak için hata ayıklama ve loglama teknikleri kullanılabiliriz.
Shell scripting ile başlamak için temel bilgileri anladıktan sonra, bir shell script oluşturarak başlayabilirsiniz. İşte adım adım bir shell script oluşturma ve çalıştırma süreci:
- Metin düzenleyici açın: Shell scriptlerini yazmak için herhangi bir metin düzenleyici kullanabilirsiniz, örneğin
nano
,vim
,gedit
veya başka bir metin düzenleyici. - Script dosyası oluşturun: Dosyanın adının genellikle
.sh
uzantısıyla bitmesi gelenekseldir, örneğinmy_first_script.sh
. Bu, dosyanın bir shell script olduğunu belirtir. - Shebang satırını ekleyin: Script dosyanızın ilk satırında, hangi shell’in kullanılacağını belirten bir “shebang” satırı ekleyin. Örneğin, Bash shell için shebang satırı şöyle görünür:
#!/bin/bash
- Script’i yazın: Shebang satırından sonra, istediğiniz komutları ve yapıları ekleyerek scriptinizi yazın. İşte basit bir örnek:
- Script dosyasını kaydedin ve çıkın: Scriptinizi yazdıktan sonra, metin düzenleyiciden kaydederek çıkın.
- Çalışır izinlerini ayarlayın: Scriptin çalıştıgından olduğundan emin olmak için, dosya izinlerini ayarlayın. Komut satırında,
chmod
komutunu kullanarak script dosyasına çalıştırılabilir izinler ekleyin:
chmod +x my_first_script.sh
- Script’i çalıştırın: Şimdi, scriptinizi çalıştırarak sonuçlarını görebilirsiniz. Terminalde aşağıdaki komutu kullanarak scriptinizi çalıştırın:
./my_first_script.sh
Bu komut, “Merhaba Dünya!” çıktısını üretmelidir.
Bu basit örnekle başlayarak, daha karmaşık shell scriptleri oluştururuz ve Linux ve Unix tabanlı işletim sistemlerinde otomasyon ve sistem yönetimi görevlerini gerçekleştirebilirsiniz. Shell scripting becerilerinizi geliştirmek için zaman içinde daha karmaşık yapılar, değişkenler, döngüler, koşullu ifadeler ve fonksiyonlar kullanarak deney yapabilirsiniz.