Terminal sekmesi başlıklarını ayarlama


11

Ben gnome-terminali birkaç uç sekmeleri açmak için çalışıyorum ve bugüne kadar yapmam başardınız şey , ama şimdi sıkışıp kaldım.

Yani, aşağıdaki gereksinime sahibim:

  • "X" ve "Y" başlıklı sekmeleri aç
  • Bazı komutları yürütün
  • Tırnakları açık ve daha sonra kullanıma hazır tutun; başlığı tutmak.

Şimdiye kadar, bazı gereksinimleri karşılamayı başardım, ancak hepsini karşılamadım:

gnome-terminal --tab -t "X" -e "bash" --tab -t "Y" -e "top"

Bu iki sekme açar:

  1. "X" (ve daha sonra başlığı varsayılan başlığa değiştirir)
  2. "Y", ancak sekmeyi kapatır kapatmaz kapanır top.

Bir sekme, lansman açmak için bir yolu var mı bash, ama değil başlığı değiştirmek? Google'ı denedim, ama vazgeçtim.

EDIT: Bu bir komut olmak zorunda değil.


Bir komut olmalı mı? Çünkü gnome-terminal GUI bunun için iyi çalışır.
neph

@kikjezrous Peki, klavye kısayollarıyla nasıl yapacağımı biliyorum ya da sadece sağ tıklıyorum, ama işe her geldiğimde yapmam gerekiyor (ve 6 sekme), bu yüzden gerçek bir zorunluluktan daha kolaylık sorunu.
omninonsense

Ah, cevabımı düzenleyeceğim.
nef

Yanıtlar:


4

Diğer yanıtlarda da görebileceğiniz gibi , sekmenin başlığı her komut isteminde kabuk tarafından değiştirilir. Ve topsekmenizi yürüttükten sonra, çalıştırmasını söylediğiniz komut bittiği için çıkar ...

Aşağıdakileri yapacağım:

1.Adım: Terminali kabuklarla çağırın ve böyle ortam değişkenleri ekleyin:

gnome-terminal --tab -t X -e "env MYTAB=X bash" --tab -t Y -e "env MYTAB=Y bash" 

2.Adım: .bashrcAşağıdaki kodunuzun sonuna ekleyin :

#if MYTAB is not set, return
[ -z "$MYTAB" ] && return
# reset the cursor and title 
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
PS1="\[\e]0;$MYTAB \w\a\]$PS1"   #title: $MYTAB and current dir
# execute the commands for every tab
case "$MYTAB" in
        X)
                echo this is X
        ;;

        Y)
                echo this is Y 
                top
        ;;
esac

... bence anlaması kolay ve ihtiyacınız olan komut / ayarlarla değiştirebilirsiniz. Test edilmiş ve iyi çalışıyor; topsekmeden çıktıktan sonra hala incelemeniz için istem ve sekmeye sahip olacaksınız.

Ekran görüntüsü ("q" tuşuna bastıktan sonra top):

ekran görüntüsü


6

Sekme başlıklarını korumak için, aşağıdaki satırları yorumlamanız gerekir .bashrc:

# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
#    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
#    ;;
#*)
#    ;;
#esac

Sonra gnome-terminal --tab -t "X" -e "bash" --tab -t "Y" -e "top"beklendiği gibi çalışacaktır:

resim açıklamasını buraya girin


En doğru cevap olduğu için bunu doğru cevap olarak işaretlemek. :-)
omninonsense

Kabul edilen cevabı değiştirdim (ve hafifçe düzenledim), çünkü gereksinimlerime daha uygun; yine de bu harika bir cevap!
omninonsense

1
Sorun değil, nasıl çalışır :)
Sylvain Pineau

1

Bir komut olması gerekmediğini ve bunu yapmak için tamamen grafiksel bir yol verdiğini varsayıyorum.

Gnome terminalini başlattıktan sonra 'dosya' menüsü, belirli bir başlık atanacak yeni sekmeler açmanıza olanak tanır. Bu, 'terminal' menüsüyle veya sekmeyi sağ tıklatıp bağlam menüsünden yaparak değiştirilebilir.

Sonra üst ve istediğiniz diğer komutları açabilirsiniz, hepsi terminalde, diğer herhangi bir terminalden çalıştırılan normal, bağlı olmayan bir işlem olarak çalışır - sadece masaüstü ortamı - bunun bittiğini hissettikten sonra ölmez yapmak gerekiyordu.


Yerleşik gnome terminalini kullanarak sekmeler için bağlam menüsünde başlık ayarlama seçeneği veya 'terminal' menüsündeki herhangi bir seçenek yoktur. Hangi terminal sürümünü kullanıyorsunuz?
Williams

1

Oynarken, komutun hiç olmadığını buldum - profil.

Şuraya git:

Edit | Profiles | (Default) | Edit | Title and Command 

ve "Terminaller Kendi Başlığını Ayarladığında" seçeneğini listenin altındaki "İlk başlığı koru" olarak değiştirin. Şimdi, bir başlık içeren bir komut başlattığınızda, etrafta dolanır, böylece komutunuz düzgün çalışır.

resim açıklamasını buraya girin


Tanımlanmış her profil için bunu yapmanız gerekeceğini unutmayın
Sylvain Pineau
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.