Belge

Bash-it ile Linux’ta Bash Nasıl Özelleştirilir

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.