wargasm@arch ~

~/.bashrc Düzenleme

gonderen WarGasm tarih: Oct.10, 2009, kategori: Linux

No Gravatar

Bashrc “~/.bashrc” dosyası aracılığı ile bize değişkenler, tanımlamalar yapmamızı, terminalde istediğimiz komutu değiştirmemizi, kısaltmamızı-uzatmamızı sağlayan bir betiktir..

Bashrc Nasıl Düzenlenir ?

Bashrc bir kaç şekilde düzenlenebilir.. Alias olarak tanımlama yapabilir, fonksiyonlarla tanımlama yapabilirsiniz.. Şimdi bunlara göz atalım;

Alias tanımlama :
Alias tanımlama bashrc’de en kolay düzenleme şekillerinden biridir. Kısa bir komutla tek satırlık komutları değiştirebilirsiniz.. Komutun kullanımı şu şekilde;

Code:
alias [girilecek veri]=['komut']

Örnek :

Code:
alias y='yaourt'

Örneğimize göre terminalde “y” ile başlayan birşey yazdığımızda otomatik olarak yaourt ile işleyecektir.. Omploader için “y” tanımlamasını kullanacak olursak;

Code:
y -S omploader

olacaktır. Bu komutla yaourt üzerinden omploader’i kurabiliriz..

Tek sıralık veri kullanmak için farklı bir komutta oluşturabiliriz,

Code:
alias yaup='yaourt -Syu --aur'

Burdaki örneğe bakarsak değişkeni olmayan yaourt güncelleme komutunu “yaup” olarak kullanacak şekle getirilmiştir. Bashrc’yi source etmenizden sonra terminalde “yaup” komutu verdiğinizde otomatik “yaourt -Syu –aur” komutunu işleyecek, yaourt ile kurulmuş programlar güncellenecektir.

Fonkiyon tanımlama :
Fonksiyon tanımlama alias tanımlamadan biraz daha uzun olmakla birlikte daha işlevseldir.. Bütün bir komutu bir arada kullanmanızı sağlayabilir veya daha farklı şeyler yaptırabilirsiniz.. Bir kaç örnekle gösterecek olursam;

Code:
ayikla () {
   if [ -f $1 ] ; then
       case $1 in
           *.tar.bz2)   tar xvjf $1    ;;
           *.tar.gz)    tar xvzf $1    ;;
           *.bz2)       bunzip2 $1     ;;
           *.rar)       unrar x -v $1       ;;
           *.gz)        gunzip $1      ;;
           *.tar)       tar xvf $1     ;;
           *.tbz2)      tar xvjf $1    ;;
           *.tgz)       tar xvzf $1    ;;
           *.zip)       unzip $1       ;;
           *.Z)         uncompress $1  ;;
           *.7z)        7z x $1        ;;
           *)           echo "don't know how to extract '$1'..." ;;
       esac
   else
       echo "'$1' is not a valid file!"
   fi
 }

Bu örnekte “ayikla” komutu ile belirtilen dosyanın “xvjf” parametresini uygulayarak açılmasını sağlar. $1 değişken ismini yani dosyanın ismini örnek alır.. [ayikla dosya ismi] şeklinde kullandığınızda dosya otomatik olarak ayıklanır..

Code:
twit() {
        echo "Kullanıcı: "
        read me
        echo "Şifre: "
        read -s sifre
        echo ""
        curl -u $me:$sifre -d status="$1" http://twitter.com/statuses/update.xml
}

Bu örnekte ise “twit” komutu ile belirlenen kullanıcı adı ve şifre ile twitter adresine mesaj gönderilmesini sağlar.. Komutu kullanmak için
[twit "durumunuz"] komutunu verebilirsiniz.. Twitter sayfanızı güncellediğinizde değişikliği göreceksiniz..

Not 1 : ~/.bashrc dosyasında yapılan her değişiklikten sonra dosyayı yeniden source etmeniz gerekir.. Source etmek için ise;
[source ~/.bashrc] komutunu kullanabilirsiniz isterseniz;
alias s=’source’ şeklinde source komutuna da bir alias atayabilirsiniz ;)

Not 2 : Bu konudaki amaç küçük değişikliklerle dağıtımımızı daha elastik ve kendimizleştirmeyi küçük örneklerle göstermektir.. Bu tanımlamaları fonksiyonları dağıtımınız ve isteğinize göre düzenleyip kullanabilirsiniz.. Bu tamamen size kalmıştır..

Not 3 : 1. Hard diskime full format attığım için şu anda sistemimde Linux dağıtımı bulunmamakta bu yüzden sizinle ~/.bashrc dosyamı paylaşamıyorum.. Kurulum ve düzenlemelerden sonra dosyamı bu konu altından paylaşacağım..

Not 4 : ~/.bashrc dosyasının ilk satırındaki PS1 değişkeni terminalinizde kullandığınız isim kullanıcı adını belirtmeye, renklendirmeye, değiştirmeye yarar.. PS1 için ayrıntılı bilgiyi
http://wiki.archlinux.org/index.php/Color_Bash_Prompt adresinden alabilirsiniz..

Kaynaklar :
eventualis.org
Arch Linux Forumları

Similar Posts:


Yorum Yaz

Ne aramistiniz?

SItede arama yapmak icin asagidaki formu kullaniniz:

Hala aradiginiz bulamadiniz mi? Yorum yaziniz yada bizimle iletisime geciniz!