Bash’imi Linux’ta nasıl özelleştirebilirim? Bash, Script meraklısı kullanıcılar ve Sistem Yöneticileri için Linux sistemine giriş yaptıktan sonra başvurulacak yerdir. Varsayılan olarak, bir Linux bash’ın sizi terminalde uzun saatler boyunca meşgul tutan gösterişi yoktur. Bu yüzden Bash-it’e ihtiyacınız var. Bash-it, Bash 3.2+ için topluluk Bash komutlarının ve komut dosyalarının bir koleksiyonudur, temel olarak, oh-my-zsh’ın bir kopyasıdır.
Bu yazıda, Bash-it ile Bash kabuğunuzun özelleştirilmesine gireceğiz. Bu araç, herhangi bir Bash kullanıcısının listesinin en üstünde olmalıdır. Bash’in iç kısımlarını kapsamlı bir şekilde kullanmadan daha iyi görünen bir bash kabuğunu hızlı bir şekilde yapılandırmanıza yardımcı olur.
Bash-it, otomatik tamamlama, temalar, takma adlar, özel işlevler içerir ve günlük işleriniz için kabuk komut dosyalarını ve özel komutları kullanmak, geliştirmek ve sürdürmek için sağlam bir çerçeve görevi görür.
Bash-it’i Linux’a Yükleme
Bash-it’i yüklemek 3 saniyelik bir görevdir. Depoyu Github’dan ~/.bash_it dizinine klonlamanız yeterlidir.
git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it
Komutun çalışması için git’in kurulu olması gerekir. Aşağıya bakınız.
# Git Ubuntu / Debian'a yükleyinsudo apt update && sudo apt -y install git
# Git CentOS / RHEL'a yükleyinsudo yum -y install git
# Git'i Fedora'ya yükleyinsudo dnf -y install git
# Git'i Arch / Manjaro'ya yükleyinsudo pacman -S git
Klonlama tamamlandıktan sonra, ~/.bash_profile veya ~/.bashrc dosyanızı otomatik olarak yedekleyen yükleyici komut dosyasını çalıştırın.
$ ~/.bash_it/install.sh
Would you like to keep your .bashrc and append bash-it templates at the end? [y/N] y
Your original .bashrc has been backed up to .bashrc.bak
Bash-it template has been added to your .bashrc
Enabling reasonable defaults
bash-it enabled with priority 350.
system enabled with priority 350.
base enabled with priority 250.
alias-completion enabled with priority 365.
general enabled with priority 150.
Installation finished successfully! Enjoy bash-it!
To start using it, open a new tab or 'source /jmutai/.bashrc'.
To show the available aliases/completions/plugins, type one of the following:
bash-it show aliases
bash-it show completions
bash-it show plugins
To avoid issues and to keep your shell lean, please enable only features you really want to use.
Enabling everything can lead to issues.
Özgün .bashrc dosyanız, .bashrc dosyasının sonuna eklenen .bashrc.bak ve bash-it şablonlarına yedeklenir.
Bash-it’i Linux’ta kullanma
Linux sistemimizde Bash-it kurulu var, değişiklikleri güncellemek için bash ortamını aktif edelim.
source ~/.bashrc
Kabuğunuz görünümü değiştirmelidir.
Bash-it’i özelleştirmek için değiştirilmiş config (~/.bash_profile veya ~/.bashrc) dosyanızı düzenlemeniz gerekir.
Bash-it’in otomatik tamamlama, temalar, takma adlar ve terminal üretkenliğinizi artırmaya yönelik özel işlevler içerdiğinden daha önce bahsetmiştik. İşte bu yapılandırmaları ortaya çıkarmak için kullanabileceğiniz yararlı komutlar.
Bash-it Alias Kullanma
Tüm takma adları listelemek için aşağıdaki komutu kullanın:
bash-it show aliases
Diğer adların çoğu varsayılan olarak etkin değildir, sözdizimini kullanarak etkinleştirin.
$ bash-it enable alias <alias name> [alias name]
E.g.
1. Enable Aliases for Vagrant
$ bash-it enable alias vagrant
vagrant enabled with priority 150.
2. Enable Ansible Aliases
$ bash-it enable alias ansible
Tüm aliasları etkinleştirmek için şunu kullanın:
$ bash-it enable alias all
ag enabled with priority 150.
ansible enabled with priority 150.
apt enabled with priority 150.
atom enabled with priority 150.
bolt enabled with priority 150.
bundler enabled with priority 150.
clipboard enabled with priority 150.
composer enabled with priority 150.
curl enabled with priority 150.
docker enabled with priority 150.
docker-compose enabled with priority 150.
emacs enabled with priority 150.
fuck enabled with priority 150.
general is already enabled.
git enabled with priority 150.
gitsvn enabled with priority 150.
heroku enabled with priority 150.
hg enabled with priority 150.
homebrew enabled with priority 150.
homebrew-cask enabled with priority 150.
homesick enabled with priority 150.
jitsu enabled with priority 150.
kubectl enabled with priority 150.
laravel enabled with priority 150.
maven enabled with priority 150.
msys2 enabled with priority 150.
npm enabled with priority 150.
osx enabled with priority 150.
phoenix enabled with priority 150.
puppet enabled with priority 150.
pyrocms enabled with priority 150.
rails enabled with priority 150.
svn enabled with priority 150.
systemd enabled with priority 150.
textmate enabled with priority 150.
tmux enabled with priority 150.
todo.txt-cli enabled with priority 150.
vagrant is already enabled.
vault enabled with priority 150.
vim enabled with priority 150.
yarn enabled with priority 150.
yarn enabled with priority .
Diğer adlarla ilgili yardım göstermek için şunu çalıştırın:
bash-it help aliases
Örnek çıktıya bakın.
....................................................
vagrant:
vhl='vagrant hosts list'
vscp='vagrant scp'
vsl='vagrant snapshot list'
vst='vagrant snapshot take'
vup="vagrant up'
vupl="vagrant up 2>&1 | tee vagrant.log'
vh="vagrant halt'
vs="vagrant suspend'
vr="vagrant resume'
vrl="vagrant reload'
vssh="vagrant ssh'
vst="vagrant status'
vp="vagrant provision'
vdstr="vagrant destroy'
vl="vagrant list'
vhst="vagrant hostmanager'
vault:
vad="vault delete'
val="vault list'
var="vault read'
varn="vault renew'
varv="vault revoke'
vasrv="vault server'
vas="vault status'
vav="vault version'
vaw="vault write'
vag="vault login -method=github'
varv="vault read -field=value'
Bir diğer adı devre dışı bırakmak için şunu çalıştırın:
$ bash-it disable alias [alias name]…
#or
$ bash-it disable alias all
Bash-it tamamlamalarını kullanma
Yüklü ve kullanılabilir tüm tamamlamaları listeleyin:
bash-it show completions
Tamamlamayı etkinleştirmek için şunları yapın:
$ bash-it enable completion <completion name>[completion name]...
Örnek:
$ bash-it enable completion vagrant virsh pip3 openshift packer knife docker
vagrant enabled with priority 350.
virsh enabled with priority 350.
pip3 enabled with priority 350.
openshift enabled with priority 350.
packer enabled with priority 350.
knife enabled with priority 350.
docker enabled with priority 350.
Veya tümünü aşağıdakilerle etkinleştirin:
bash-it enable completion all
Yüklü tamamlamalarla ilgili yardımı göstermek için şunu kullanın:
bash-it help completions
Bir tamamlamayı devre dışı bırakmak için şunları yapın:
bash-it disable completion <completion name> [completion name]...
#OR
bash-it disable completion all
Bash-it Eklentilerini Kullanma
Eklentiler, bash özelliklerini ve işlevlerini genişletmek için kullanılır. Bash-it, kilidini açmak için etkinleştirebileceğiniz bir dizi eklentiyle birlikte gelir.
Kullanılabilir eklentileri listelemek için şu komutu kullanın:
bash-it show plugins
Eklentiyi etkinleştirmek için şunu kullanın:
$ bash-it enable plugin <plugin name> [plugin name]...
VEYA tümünü şununla etkinleştirin:
$ bash-it enable plugin all
Bu örnek, pil şarj seviyeniz hakkında bilgi görüntülemek için kullanılan eklentiyi etkinleştirir.
$ bash-it enable plugin battery
battery enabled with priority 250.
Ardından bashrc profilinizi kaynaklayın.
source ~/.bashrc
Çıktıya bakın

Bir eklentiyi devre dışı bırakmak için şunları yapın:
$ bash-it disable plugin [plugin name]…
#or-
$ bash-it disable plugin all
Arama İşlevini Kullanma
Bash-it arama işlevi, belirli bir çerçeve, programlama dili veya bir ortam için hangi eklentilerin, takma adların veya tamamlamaların mevcut olduğunu hızlı bir şekilde bulmak için kullanılır.
Çalışma ortamınızla ilgili şeyler bulmak için kullanın. Arama sözdizimi şöyledir:
$ bash-it search term1 [[-]term2] [[-]term3]....
Python ile ilgili her şeyi arayın:
$ bash-it search python pip
plugins: pipsi python
completions: pip pip3 pipenv
Veya Ruby geliştiricisi için:
$ bash-it search ruby rake gem bundle irb rails
aliases: bundler rails
plugins: chruby chruby-auto rails ruby
completions: bundler gem rake
Etkinleştirilen modüller yeşil renkle gösterilir. Bir arama terimini sonuçlardan çıkarmak için önüne “-” ekleyebilirsiniz.
bash-it search ruby rake gem bundle irb rails -chruby
Arama komutuna bir –enable veya –disable ekleyerek, bir arama sorgusu sonucunda çıkan tüm modülleri otomatik olarak etkinleştirebilirsiniz.
Bash-it temasını değiştirme
$BASH_IT / themes arasından seçim yapabileceğiniz 50+ Bash-it teması var
ls ~/.bash_it/themes/
Bash temanızı değiştirmek için BASH_IT_THEME kullanmak istediğiniz tema adına ayarlayın.
vim ~/.bashrc
Set like below.

Tema ekran görüntülerini wiki/Temalar‘da görebilirsiniz.
NOT: Bash-it ve bazı temalar UTF-8 karakterleri kullanır, bu nedenle terminalinizde garip davranışlardan kaçınmak için yerel ayarınızı LC_ALL=en_US olarak ayarlayın. UTF-8 veya Amerikan İngilizcesi değilse dilinize eşdeğeri.
Bash-it Nasıl Güncellenir
Bash-it’i en son sürüme güncellemek için şunu çalıştırmanız yeterlidir:
$ bash-it update
Bash-it is up to date, nothing to do!
Bash-it’in daha eski bir sürümünü kullanıyorsanız, migrate komutunu kullanmanız önerilir.
bash-it migrate
Bu komut, Bash-it yapısını otomatik olarak en son sürüme geçirir.
Linux / Unix’te Bash-it nasıl kaldırılır
Bash-it’i kaldırmak için $BASH_IT dizininde bulunan uninstall.sh betiğini çalıştırın:
$ cd $BASH_IT
$ ./uninstall.sh
Your original .bashrc has been restored.
Uninstallation finished successfully! Sorry to see you go!
Final steps to complete the uninstallation:
-> Remove the /home/jmutai/.bash_it folder
-> Open a new shell/tab/terminal
Nasıl özelleştirileceği hakkında daha fazla bilgi edinmek için Bash-it projesinin sayfasını kontrol edin. Umarım bu kılavuz, Linux’ta daha iyi bir terminal deneyimine giden yolculuğunuzda yardımcı olmuştur.
Yazının orijinalini buradna okuyabilirisniz.

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.