Bash [Oto Kurulum]

Başlatan Linux, 20 Mayıs 2008 - 20:49:34

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Linux

Bash nedir?

Açılımı bourne again shell 'dir. Biz shell scripting(shell programlama) yani kabuk programlama hakkinda bilgi verecegim.
Ama linux de en çok işimize yarayan komutlari tek komut olarak caliştira bilmemize saglayan cok güzel bir yazilimdir.

Dökümanda yazacagim konulardan sonra kendi kodunuzu yapicaksiniz

Bash neler kullanabiliriz?

if, else, alias, while gibi komutlari bash scriptinde kullanabilirsiniz. Aslinda bash da herşeyi kullanmak mümkün

Şimdi geçelim dersimize;

Shell scripting kodlamasinin ilk satirindaki satir her zaman sabittir. Nedir ilk satirimiz;

#!/bin/bash

Bu aralar oto kurulumlar moda oldugu için bizde bir shell programi yazalim.

Örnek olarak IRCd version'u olan Unreal kurulumunu beraber yapalim.

Örnek;

#/usr/bin/!
#
# örnek bash kodu www.ubuntu-tr.net

vs=Unreal3.2.6
clear
if [ "$(ls -A Unreal3.2)" ]; then
echo; echo; echo "$color $USER size ait hesapda, $vs versionu kurulu! Islem iptal edildi."
exit 0
else
wget -q -O http://www.ubuntu-tr.net/Unreal3.2.3.tar.gz
echo -n "Dosya indirilsinmi?"
read cc
tar zxvf Unreal3.2.3.tar.gz
cd /home/$USER/Unreal3.2
wget -q -O http://www.ubuntu-tr.net/module/opers.conf
wget -q -O http://www.ubuntu-tr.net/module/ircd.log
./Config -nointro -quick
make
cd
rm -rf Unreal3.2.3.tar.gz
clear
echo -n "$USER size hesabiniza $vs IRC(d) başari ile kuruldu."
fi


Şimdi açıklayalim ne yaptik..

vs=Unreal3.2.6

kurulum sonunda, biraz görsellik olmasi için $vs kuruldu yazicamiz için bir deger verdik

clear

ekranimizi temizler, temiz bir ekranda kurulum yapalim ama degilmi?

if [ "$(ls -A Unreal3.2)" ]; then

Eger Unreal3.2 adi altinda bir klasör varsa;

echo; echo; echo "$USER size ait hesapda, $vs versionu kurulu! Islem iptal edildi."

yazisini gönder

exit 0

işlemden çık

else

egerki o klasör yoksa

wget -q -O http://www.ununtu-tr.net/Unreal3.2.3.tar.gz

dosyasi indir. Ama neden wget -q -O derseniz, indirme işlemlerini ekranda görünmesini istemem

echo -n "Dosya indirilsinmi?"

kullaniciya onay sor

read cc

kullanici onayi(enter)

tar zxvf Unreal3.2.3.tar.gz

indirilen dosyayi aç

cd /home/$USER/Unreal3.2

/home/kullanici/Unreal3.2 dizinine gir

wget -q -O http://www.ubuntu-tr.net/module/opers.conf
wget -q -O http://www.ubuntu-tr.net/module/ircd.log


dosyalarini indir

./Config -nointro -quick

kurulum sirasinda bize sordugu islemleri direk geçmesi için bunu yaziyoruz

make

kurulum isleminin son aşamasi, ayarlari kayit et.

cd

ana menüye geri döner.

rm -rf Unreal3.2.3.tar.gz

dosyamizi sil

clear

ekranimizi temizle

echo -n "$USER size hesabiniza $vs IRC(d) başari ile kuruldu."

kullaniciyi ircd'in kuruldugunu söyle.

fi

kullandigimiz her if için bir fi yaziyoruz/zorundayiz.

Hazırlayan : Bahtiyar (Behroozwolf)

heartsmagic

#1
Yazı için teşekkürler. Kaynak sensen lütfen belirt, eğer başka bir yerse onu da belirtelim. Aslında bunu ben de es geçiyorum zaman zaman, yapılması gereken bir mevzu.

Not: Yanlış anlaşılmasın başka bir yerden almışsam %100 kaynak belirtirim. Yazılarımı "ben yazdım" diyerek belirtmeyi bazen es geçiyorum.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

Linux

döküman yakın bir arkadaşımın..
Ozaman şöyle belirtelim, kaynak : Bahtiyar :)

heartsmagic

Sorun değil varsa adres yoksa isim.
Teşekkürler.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.