Basit Bash Komut Dosyası Nasıl Yazılır

How Write Simple Bash Script



Birçoğu bash'ı bağımsız bir kelime olarak kabul eder. Ancak, çok az insan 'bash' teriminin aslında Bourne Again Shell (BASh) anlamına geldiğini biliyor. Linux işletim sistemi için varsayılan komut satırı yorumlayıcısı olmasının yanı sıra bash, tam teşekküllü bir programlama dilidir. Linux işletim sistemini kullanmayı sevenler, bash betiklerini iyi bilmelidir. Ancak acemi kullanıcılar için bu makale Linux Mint 20'de basit bir Bash betiği yazma sürecini gösterir.

Linux Mint 20'de Basit Bir Bash Komut Dosyası Yazma

Aşağıdaki adımları başarıyla gerçekleştirerek, Linux Mint 20'de basit bir bash betiği yazabilirsiniz:







İlk olarak, Linux Mint 20'nin ana dizininde boş bir belge oluşturun ve ona tercih ettiğiniz herhangi bir adı ve ardından .sh uzantısını verin. Senaryomuz için, aşağıdaki resimde gösterildiği gibi 'Bash.sh' belgesini adlandırdık:

Ardından, açmak için bu dosyaya çift tıklayın. Dosya açıldığında, dosyanın ilk satırı olarak '#!/bin/bash' yazın. Bu satır, aşağıdaki kodun bir bash betiği olacağını belirtmek için her bash dosyasına eklenir. Bu satır aşağıdaki resimde de gösterilmiştir:

Yukarıdaki satırı ekledikten sonra, terminalde bir mesaj görüntülemek için bir bash betiği yazın. Bunu yapmak için aşağıdaki resimde gösterilen betiği bash dosyasına yazmanız yeterlidir. Bu komut dosyasında, terminalde basit bir mesaj yazdırmak için 'echo' komutu kullanılır. Bash'de görüntülenecek mesaj her zaman ters virgül içinde yazılır.

Bu betiği yazdıktan sonra, bash dosyanızı kaydedin ve ardından kapatın.
Şimdi, bu bash betiğini çalıştırmanız gerekiyor. Bunu yapmak için, aşağıdaki resimde gösterildiği gibi terminali başlatmanız gerekecektir:

Terminali Linux Mint 20'de başlattıktan sonra, yeni oluşturulan bash betiğini aşağıda gösterilen komutla yürütün:



$bashdosya.sh

Burada, 'Dosya' terimini değiştirmek için bash dosyanıza verdiğiniz adı sağlamalısınız. Bu adı, 'Bash.sh' adıyla, yani oluşturduğumuz bash dosyasının adıyla değiştirdik.

Bu komutu çalıştırdıktan sonra, aşağıdaki resimde gösterildiği gibi, bash betiğinizin çıktısı terminalde görüntülenecektir:

Şimdi, bash betiğimizi biraz daha interaktif hale getirmeye çalışacağız. Yani, komut dosyasını kullanıcıdan girdi alabilen hale getirmeye çalışacağız. Bunun için az önce oluşturduğunuz bash dosyasını açın ve aşağıdaki resimde gösterilen scripti içine yazın.

Bu komut dosyasında, kullanıcının adını vermesini istiyoruz. Kullanıcı terminal aracılığıyla adını girdiğinde, ad 'read' komutu aracılığıyla 'name' değişkeninde saklanır. Daha sonra kullanıcıya girdiği isimle hitap ederken kullanıcıya bir mesaj göstermek istiyoruz. Burada 'name' değişkeninde saklanan değere önüne '$' sembolü koyarak ulaşabilirsiniz. 'echo' komutunun kullanımı, yukarıda oluşturulan komut dosyasında zaten ayrıntılı olarak açıklanmıştır.



Yeni değiştirilen bash betiğinizi terminal aracılığıyla yürütün. Yukarıda yapılan değişiklik nedeniyle, terminal aşağıdaki resimde gösterildiği gibi adınızı vermenizi isteyecektir:

Adınızı girip Enter'a bastığınızda, aşağıdaki resimde gösterildiği gibi, bash betiği size adınızla hitap ederken bir mesaj görüntüler:

Şimdi, size 'tarih' komutunun kullanımını göstermek için bash betiğimizi biraz daha değiştirmeye çalışacağız. Bu komut basitçe geçerli tarih ve saati belirlemek için kullanılır. Bu işlevi elde etmek için aşağıdaki resimde gösterilen betiği bash dosyanıza yazın.

Yukarıdaki betikten tek fark, bu sefer yeni bir 'tarih' değişkeni yarattık ve 'tarih' komutunu değer olarak atadık. Bir komutu bash içindeki bir değişkende saklamak istediğimizde, bu komut her zaman parantez içine alınır ve komutun önüne bir '$' sembolü koyarız. 'date' komutunun değerini 'date' değişkenine kaydettikten sonra, terminalde basitçe yazdırdık. Bu değişiklikleri yaptıktan sonra bash dosyasını kaydedin ve kapatın.





Aynı bash betiğini tekrar çalıştırın. Bu sefer adınızı girdikten sonra terminal, aşağıdaki resimde gösterildiği gibi size adınızla hitap ederken güncel tarih ve saati de gösterecektir:

Bazen, bir bash betiğinin çıktısının uçbirimde görüntülenmesini istemeyebilirsiniz; daha doğrusu çıktının başka bir dosyaya kaydedilmesini isteyebilirsiniz. Bunu yapmak için bash betiğini tekrar değiştirmeniz gerekecek. Bu sefer, başlangıçta terminalde çıktıyı görüntülemek için kullanılan 'echo' komutundan sonra, yalnızca '>>' sembolünü ve ardından çıktının saklanması gereken dosya adını eklemeniz gerekir. '>>' sembolü ve dosya adının ardından gelen 'echo' komutu, bash betiğinin çıktısını terminalde görüntülemek yerine dosyaya depolamak için kullanılır. Bizim durumumuzda, aşağıda gösterilen resimde doğrulayabileceğiniz gibi, çıktı dosyasını 'NewBashFile.txt' olarak adlandırdık:

Bu değişiklikleri yaptıktan sonra dosyayı kaydedin ve kapatın. Bu bash dosyasını terminalden yürütün. Terminal sizden adınızı girmenizi isteyecektir. Adınızı girdikten sonra Enter tuşuna basar basmaz, aşağıdaki resimde gösterildiği gibi artık terminalde herhangi bir çıktı göremezsiniz:

Şimdi, Ana dizininize gidin. Burada, aşağıdaki resimde vurgulandığı gibi 'NewBashFile.txt' adlı yeni bir dosya bulacaksınız:

Başlatmak için bu dosyaya çift tıkladığınızda, aşağıdaki resimde gösterildiği gibi, bash betiğinizin çıktısını bu metin dosyasının içeriği olarak görebileceksiniz:

Alternatif olarak, bu çıktı dosyasının içeriğini görüntülemek için terminalinizde aşağıdaki komutu da çalıştırabilirsiniz:

$kediNewBashFile.txt


Yukarıda gösterilen komutu çalıştırdığınızda, o dosyanın içeriğini terminalinizde görebileceksiniz:



Çözüm

Yukarıda gösterilen yöntemde tartışılan farklı senaryolar, bash komut dosyası yazmayı öğrenmek isteyenler için hızlı bir başlangıç ​​sağlamak için yeterlidir. Bu senaryolar yardımıyla girdi alma, çıktıyı görüntüleme, bash komutlarını kullanma ve bir betiğin çıktısını yeni bir dosyaya kaydetme yöntemini göstermeyi başardık. Bununla birlikte, bash programlama diğer karmaşık problemler için de çok uygun bir şekilde kullanılabilir.