ฉันจะเปลี่ยนชื่อเซสชันใน tmux ได้อย่างไร


314

เมื่อฉันเริ่มใช้ tmux ครั้งแรกฉันไม่ได้ตั้งชื่อเซสชันแรก จากนั้นเมื่อฉันเริ่มสร้างเซสชันที่แตกต่างกันสำหรับงานที่แตกต่างกัน (งานเล่น ฯลฯ ) ฉันเริ่มตั้งชื่อเซสชันของฉัน

ตอนนี้ฉันมีเซสชันที่แตกต่างกันมากมาย แต่อันแรกไม่มีชื่อ ฉันจะตั้งชื่อ (หรือเปลี่ยนชื่อ) ทั้งจากภายใน tmux และจาก shell prompt ได้อย่างไร

คำตอบ:


469

จากภายใน tmux

ทางสั้น:คำนำหน้าจากนั้นเครื่องหมายดอลลาร์:

Ctrl+ B,$

หรือ

ทางยาว:คำนำหน้าจากนั้นโคลอน:

Ctrl+ B,:

จากนั้นพิมพ์คำสั่งนี้ที่พรอมต์:

rename-session [-t current-name] [new-name]

หาก-t current-nameไม่ได้ระบุชื่อเซสชันปัจจุบัน ( ) เซสชันที่แนบปัจจุบันจะถูกเปลี่ยนชื่อ

โดยค่าเริ่มต้นชื่อเซสชันจะอยู่ในเครื่องหมายวงเล็บที่มุมซ้ายล่างของ tmux คุณสามารถแสดงรายการเซสชันทั้งหมดและสลับระหว่างเซสชันได้ด้วย:

Ctrl+ B,s

จากเชลล์พรอมต์

คุณสามารถเปลี่ยนชื่อเซสชัน tmux ด้วย

tmux rename-session [-t current-name] [new-name]

หากต้องการค้นหาชื่อเซสชันให้ทำtmux list-sessions- จะอยู่ในคอลัมน์ซ้ายสุด

หาก-t current-nameไม่ได้ระบุชื่อเซสชันปัจจุบัน ( ) เซสชันที่ใช้ล่าสุดจะถูกเปลี่ยนชื่อ


1
ฉันกำลังพยายามสร้างคำตอบที่ยอมรับได้ คุณสามารถบอกฉันวิธีการทำเช่นนี้จากภายใน tmux? และฉันจะทราบได้อย่างไรว่าเซสชันของฉันชื่ออะไร
Richard Jones

2
อืม .. C-b $ดูเหมือนจะไม่ได้รับการตั้งค่าตามค่าเริ่มต้นใน tmux ของฉันบน Ubuntu 10.04 คุณสามารถค้นหาชื่อของเซสชันปัจจุบันของคุณด้วยtmux list-sessionsมันจะเป็นรายการที่เหลือมากที่สุด อาจเป็น '0' หากเป็นเซสชันแรกที่คุณสร้าง tmux rename-session -t 0 renamed_sessionแล้วก็ คำสั่งทั้งสองควรทำงานจากภายใน tmux
skrblr

1
มันจะดีกว่าถ้าคุณเติมคำตอบของคุณด้วยการแก้ไขแบบครอบคลุมแทนที่จะเป็นความคิดเห็นที่กลับไปกลับมา
สุ่ม

8
โปรดทราบว่าrename-session [new-name]เพียงพอหากคุณต้องการเปลี่ยนชื่อเซสชันปัจจุบันภายใน tmux
Matvey Aksenov

5
tmux new -s mynameเพื่อเริ่มเซสชันใหม่ที่มีชื่อ ดังนั้นคุณจะไม่เจอสถานการณ์นี้อีกในครั้งหน้า
แดนนี

11

จากภายใน tmux คุณยังสามารถแก้ไขชื่อของหน้าต่างปัจจุบัน (หนึ่งในหลาย ๆ ภายในเซสชัน) ด้วย:

  • คำนำหน้าจากนั้นเครื่องหมายจุลภาค:

Ctrl+ B,,

(นี่ไม่ได้เปลี่ยนชื่อ "เซสชั่น" แต่หน้าต่างภายในเซสชั่นซึ่งผู้ใช้หลายคนที่มาที่นี่กำลังค้นหา)


ฉันสังเกตว่าถ้าฉันทำในขณะที่โปรแกรมกำลังทำงานอยู่หน้าต่างปัจจุบันจะสูญเสียชื่อเมื่อโปรแกรมเสร็จสิ้น มีวิธีใดบ้างไหม?
bonh

1
@bonh:set -g allow-rename off
samson

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