จะเปลี่ยนชื่อแท็บเทอร์มินัลใน gnome-terminal ได้อย่างไร?


70

ใช้เพื่อให้สามารถคลิกขวาที่แท็บและเปลี่ยนชื่อ ไม่แน่ใจวิธีการทำเช่นนี้อีกต่อไป เพิ่งอัพเกรดเป็น Fedora 21

แก้ไข: ฉันเปลี่ยนจาก gnome-terminal เป็น ROXterm

คำตอบ:


108

สร้างฟังก์ชั่นใน~/.bashrc:

function set-title() {
  if [[ -z "$ORIG" ]]; then
    ORIG=$PS1
  fi
  TITLE="\[\e]2;$*\a\]"
  PS1=${ORIG}${TITLE}
}

จากนั้นใช้คำสั่งใหม่ของคุณเพื่อตั้งชื่อเทอร์มินัล มันทำงานกับช่องว่างในชื่อด้วย

set-title my new tab title

มันเป็นไปได้ที่จะใช้set-titleอีกครั้งในภายหลัง(PS1 ดั้งเดิมถูกเก็บรักษาไว้เป็นORIG)


32

user titleรหัสถูกลบออก1gnome-terminal 3.14จาก ในการตั้งชื่อคุณสามารถใช้ลำดับ escape:

printf "\e]2;YOUR TITLE GOES HERE\a"

หรือเช่นกับbash:

PROMPT_COMMAND='echo -ne "\033]0;YOUR TITLE GOES HERE\007"'

1: คำพังเพยดูข้อผิดพลาด 724110และคำพังเพยข้อผิดพลาด 740188


9
ขอบคุณสำหรับลิงค์ไปสู่การอภิปราย ฉันเดาคำตอบนี้ไม่ คำพูดตลกจากลิงค์ใดลิงก์หนึ่ง: "ผู้ใช้ที่ทันสมัยไม่ได้ใช้เทอร์มินัล" ฮ่า ๆ.
penner

สิ่งนี้ใช้ไม่ได้สำหรับฉัน: Fedora 21, Bash 3.14.3
kdbanman

มันใช้งานได้กับ fc22 ด้วย ..
Balaji Perumal

3
เห็นได้ชัดว่ากำลังจะกลับมา ... "ใช่แล้วตัวเลือก --title ได้รับการกู้คืนใน GNOME 3.20 (วางจำหน่ายเดือนมีนาคม 2016) ซึ่งเราเปิดตัวครึ่งปีที่แล้ว แต่ Ubuntu 16.04 มาพร้อมกับ GNOME 3.18 (เปิดตัวกันยายน 2015) ได้ลบตัวเลือกนี้ " UTCC ของ Michael Catanzaro 2016-09-01 18:41:45 UTC ความคิดเห็น # 31 (จากข้อผิดพลาดที่สอง 740188)
ปราชญ์

1
@sage - ไม่มีฟีเจอร์ความคิดเห็นของ Michael เกี่ยวกับ--titleตัวเลือกที่ฉันสามารถยืนยันได้ว่าได้รับการแก้ไขแล้ว อย่างไรก็ตาม Q ที่นี่เกี่ยวกับตัวเลือกคลิกขวาเพื่อเปลี่ยนชื่อแท็บที่เปิดอยู่ในปัจจุบัน - ปัญหาที่แตกต่าง ...
don_crissti

18

เวอร์ชั่นใหม่ของ gnome-terminal เพียงทิ้งคุณสมบัติระดับมืออาชีพที่เป็นประโยชน์มากที่สุด :-(

ฉันได้ลองติดตั้งและใช้งาน gnome-terminal รุ่นเก่ากว่าและเปรียบเทียบทางเลือกอื่น

หากterminatorแปลกใหม่เกินไปสำหรับคุณmate-terminalนี่เป็นตัวเลือกที่ยอดเยี่ยม! มันเป็นทางแยกของ gnome-terminal และเก็บคุณสมบัติที่ดีไว้ทั้งหมด:

  • คุณสามารถเปิดหลายแท็บได้จากบรรทัดคำสั่งโดยให้ชื่อต่างกัน

    mate-terminal --tab -t "aaa" --tab -t "bbb" --tab -t "ccc"
    
  • คุณสามารถตั้งค่าแป้นพิมพ์ลัด (ฉันใช้ Ctrl + Shift- i ) เพื่อตั้งค่าที่i tle


Guake ไม่ใช่ตัวแปรที่ไม่ดีด้วย
Bunyk

1

เมื่อคุณเรียกใช้โปรแกรมถิ่นที่อยู่เช่นด้านบนหรือ ssh แท็บจะมีข้อความกำกับอย่างเหมาะสม

gnome-terminal --tab -e top -t "aaa" --tab -e top -t "bbb" 

1

หากคุณใช้ Ubuntu 16.04 คุณอาจต้อง:

PS1=$
PROMPT_COMMAND=
echo -en "\033]0;New title\a"

ฉันรายการนี้ข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ในการเชื่อมโยง



0

ในฐานะที่เป็นส่วนขยายของคำตอบของ @Weston Ganger หากคุณต้องการตั้งชื่อโดยอัตโนมัติเมื่อเปิดเทอร์มินัล Gnome ใหม่จากนั้นเพิ่มชื่อนี้ที่ด้านล่างของ~/.bashrc:

if [ ! -z "$SET_TITLE" ]; then
    set-title $SET_TITLE;
    export SET_TITLE=;
fi

จากนั้นเปิดเทอร์มินัลเช่น:

gnome-terminal --tab -e 'bash -c "export SET_TITLE=\"my title\"; bash -i"'

และมันจะทำงานโดยอัตโนมัติset-titleเพื่อใช้ชื่อ


0

โซลูชันหนึ่งบรรทัดเพิ่มบรรทัดต่อไปนี้ใน. bashrc ของคุณ

alias tab_name='read -p "Name to Assign:" tabname ;  printf "\e]2;$tabname\a" '

ตอนนี้พิมพ์ tab_name ใน terminal เช่น

user:~$ tab_name  
Name to Assign: ( type desired name here! )

เสร็จสิ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.