Çoğu Linux dağıtımı Bash istemini aşağıdaki gibi görünecek şekilde yapılandırır username@hostname:directory$
. Ancak Bash istemini istediğinizi içerecek şekilde yapılandırabilir ve hatta istediğiniz renkleri seçebilirsiniz.
Buradaki örnek adımlar Ubuntu 16.04 LTS'de gerçekleştirildi. Varsayılan Bash istemi ve .bashrc dosyasındaki ayarlar biraz farklı olsa da, işlem diğer Linux dağıtımlarında aynı olmalıdır.
İstem Değişkeni Nerede Saklanır?
Bash istemi yapılandırmanız, kullanıcı hesabınızın .bashrc dosyasında saklanır. ~/.bashrc
. Yani, kullanıcı adınız bob ise, dosya /home/bob/.bashrc
.
Geçerli Bash değişkenini görüntülemek için dosyayı açabilirsiniz. Örnek metin düzenleyicimiz olarak nano'yu kullanacağız, ancak vi, emacs veya rahat olduğunuz başka bir metin düzenleyiciyi de kullanabilirsiniz. Bir Terminal açın ve çalıştırın:
nano ~/.bashrc
Aşağı doğru kaydırın PS1=
Bölüm. İlk değişken oldukça karmaşık görünüyor çünkü renk bilgisi içeriyor – bunu daha sonra açıklayacağız. Renk değişkeni olmadan ikinci değişken şu şekildedir:
${debian_chroot:+($debian_chroot)}u@h:w$
Bu hala biraz karmaşık ${debian_chroot:+($debian_chroot)}
bit. Bunlar sadece Bash'e Debian chroot ortamı kullanıp kullanmadığınızı ve normalde gösterilmeyeceğini bildirmesini söyler. Bunları yok sayarak, Bash istemi değişkeninin varsayılan yapısı şöyledir:
u@h:w$
u
kullanıcı adınızı gösterir, @
@ işaretini gösterir, h
ana bilgisayar adını (bilgisayar adı), :
şunu gösterir: karakter, w
çalışma dizinini gösterir ve $
normal kullanıcı hesabınız için bir $ veya köklüyseniz # belirtir. Yani, hepsini bir araya getirmek, username@hostname:working_directory$
.
Bash isteminizi değiştirmek için PS1 değişkenindeki özel karakterleri eklemeniz, kaldırmanız veya yeniden düzenlemeniz yeterlidir. Ancak kullanabileceğiniz varsayılan değişkenlerden daha fazla değişken vardır.
Metin düzenleyiciyi şimdilik bırakın – nano'da, çıkmak için Ctrl + X tuşlarına basın. .Bashrc dosyanıza gerçekten yeni bir tane yazmadan önce değişkenlerle nasıl deneme yapacağınızı göstereceğiz.
Özel Bash İstemi Nasıl Oluşturulur
Bash istemi yapılandırmanız PS1 değişkeninde saklanır. PS1 değişkeninin içeriğini yeni bir değişkene kaydetmek için aşağıdaki komutu çalıştırın:
DEFAULT=$PS1
Şimdi PS1 değişkenini denemek için farklı değerlere ayarlayabilirsiniz. Örneğin, buradaki ilk satır isteminizi temel bir “kullanıcı $” istemine, ikinci satır isteminizi temel bir “kullanıcı: çalışma_dizini $” istemine ayarlar.
PS1="u$ " PS1="u:w$ "
Varsayılan isteminize geri dönmek isterseniz, aşağıdaki komutu çalıştırın.
PS1=$DEFAULT
Bash, bu varsayılan ayarları daha önce kaydettiğiniz için varsayılan istemine geri yüklenecektir. Burada yaptığınız değişikliklerin yalnızca geçerli Bash oturumu için geçici olduğunu unutmayın, böylece varsayılan isteminize geri dönmek için her zaman oturumu kapatıp tekrar oturum açabilir veya kapatabilir ve yeniden açabilirsiniz. Ancak yukarıdaki satır, bir pencereyi kapatma veya kapatma zorluğu olmadan varsayılan Bash isteminize kolayca geri dönmeyi mümkün kılar.
Değişkene herhangi bir karakter veya metin ekleyebilirsiniz. Bu nedenle, varsayılan istemin önüne “Hello World” eklemek için aşağıdakileri kullanabilirsiniz:
PS1="Hello World u@h:w$ "
Artık temelleri öğrendiğinize göre, tüm özel karakterlerin ne olduğunu bilmeniz gerekir. Muhtemelen bunların çoğunu umursamayacaksınız, ancak Bash kılavuzunda göründüğü gibi tam liste:
- Bir zil karakteri:
a
- “Hafta içi Ay Tarihi” biçimindeki tarih (ör. “Sal 26 Mayıs”):
d
- Biçim strftime (3) 'e iletilir ve sonuç bilgi istemi dizesine eklenir; boş bir biçim, yerel ayara özgü bir zaman gösterimi ile sonuçlanır. Diş telleri gereklidir:
D{format}
- Bir kaçış karakteri:
e
- Ana makine adı, ilk ‘’ ye kadar.
h
- Ana bilgisayar adı:
H
- Şu anda kabuk tarafından yönetilen işlerin sayısı:
j
- Kabuğun terminal cihaz adının taban adı:
l
- Yeni bir satır:
n
- Bir satır başı:
r
- Kabuğun adı, taban adı $ 0 (son eğik çizgiyi izleyen kısım):
s
- 24 saatlik SS: DD: SS biçiminde saat:
t
- 12 saatlik SS: DD: SS biçiminde saat:
T
- 12 saatlik am / pm formatında saat:
@
- 24 saatlik SS: DD biçiminde saat:
A
- Mevcut kullanıcının kullanıcı adı:
u
- Bash versiyonu (ör. 2.00):
v
- Bash, sürüm + patchlevel sürümü (ör. 2.00.0):
V
- $ HOME bir tilde ile kısaltılmış olarak geçerli çalışma dizini ($ PROMPT_DIRTRIM değişkenini kullanır):
w
- $ HOME tarafından bir tilde ile kısaltılmış $ PWD temel adı:
W
- Bu komutun geçmiş numarası:
!
- Bu komutun komut numarası:
#
- Etkili kullanıcı kimliği 0, #, değilse $:
$
- ASCII kodu nnn sekizlik değeri olan karakter:
nnn
- Ters eğik çizgi:
\
- Yazdırılmayan karakterler dizisine başlayın. Bu, bir terminal kontrol sekansını isteme gömmek için kullanılabilir:
(
- Yazdırılmayan karakter dizisini sonlandırma:
)
Bu nedenle, Bash isteminize tarih ve saati eklemek ve çalışma dizinini ikinci bir satıra komuta etmek istiyorsanız, aşağıdaki yapıyı kullanabilirsiniz:
PS1="(d t) u@hnw$ "
Buradaki köşeli parantezler gerekli değildir, ancak işleri görsel olarak parçalamaya ve satırın daha kolay okunmasına yardımcı olun. Daha önce ele aldığımız gibi, istediğiniz değişkene herhangi bir metin veya normal karakter ekleyebilirsiniz, bu yüzden sizin için uygun olanı kullanmaktan çekinmeyin.
Bilmeniz gereken bir tane daha güçlü hile var: Herhangi bir komutun çıktısını bilgi istemine ekleyebilirsiniz. Bilgi istemi görüntülendiğinde, Bash komutu çalıştırır ve mevcut bilgileri doldurur. Bunu yapmak için, ikisi arasında çalıştırmak istediğiniz herhangi bir komutu ekleyin `
karakter. Bu bir kesme işareti değildir; bu, klavyenizdeki Sekme tuşunun üstünde görünen mezar aksanıdır.
Örneğin, Linux çekirdek sürümünü istemde görüntülemek istediğinizi varsayalım. Aşağıdaki gibi bir çizgi kullanabilirsiniz:
PS1="u@h on `uname -s -r` w$ "
Başka bir örnek olarak, sistemin çalışma süresini ve yük ortalamasını, uptime
Komut. Çalışma zamanını istemin geri kalanından önce kendi hattına koyan aşağıdaki yapıyı kullanabilirsiniz.
PS1="(`uptime`)nu@h:w$ "
İdeal komut isteminizi oluşturmak için farklı özel karakterleri ve komutları denemekten çekinmeyin.
Bash İsteminize Renk Ekleme
Tercih ettiğiniz istemi anladıktan sonra, ona renk ekleyebilirsiniz. Bu aslında çok basit, ama baktığınız şeyi anlamadıysanız değişkenin çok dağınık ve karmaşık görünmesini sağlar.
Örneğin, öncekinden varsayılan renk istemi değişkeni şuydu:
${debian_chroot:+($debian_chroot)}( 33(01;32m)u@h( 33(00m):( 33(01;34m)w( 33(00m)$
Veya, debian_chroot bitlerini bir kez daha kaldırmak:
( 33(01;32m)u@h( 33(00m):( 33(01;34m)w( 33(00m)$
Bu aslında sadece u@h:w$
daha önceki değişken, ancak renk bilgileri ile. Gerçekten, birkaç bölüme ayırabiliriz:
( 33(01;32m)u@h ( 33(00m): ( 33(01;34m)w ( 33(00m)$
İlk bölüm u@h
bit, onu yeşile çeviren renk bilgisinden önce gelir. İkincisi :
karakterin önüne gelir. Üçüncüsü w
bit, önce maviye dönüşen renk bilgileri. Dördüncüsü $
bit, öncesinde herhangi bir renklendirmeyi kaldıran renk bilgileri.
Kendi renk etiketlerinizi nasıl oluşturacağınızı anladıktan sonra, Bash'inizin istediğiniz bölümlerine istediğiniz renkleri ekleyebilirsiniz.
İşte bilmeniz gerekenler: Renk kodu bilgilerinin tamamını (
ve ) character
s. Etiketin içinde şunlardan biriyle başlamanız gerekir: 33(
veya e(
Bash'e bunun renk bilgisi olduğunu belirtmek için. Her ikisi de