คำถามติดแท็ก tmux

tmux เป็นเทอร์มินัลมัลติเพล็กเซอร์: มันช่วยให้มีเทอร์มินัลจำนวนมาก (หรือ windows) แต่ละโปรแกรมที่รันแยกต่างหากเพื่อสร้างเข้าถึงและควบคุมจากหน้าจอเดียว tmux อาจถูกแยกออกจากหน้าจอและทำงานต่อในพื้นหลังจากนั้นจึงติดตั้งใหม่ในภายหลัง

2
คำสั่งนำหน้าสองคำสั่งสำหรับ tmux?
เรามีเซสชั่น tmux ที่หลายคนต้องเชื่อมต่อ บางคนชอบทางลัดCtrl+ aคำนำหน้าและบางคนชอบCtrl+ bทางลัดเริ่มต้น มีสิ่งใดบ้างที่ฉันสามารถใส่ลงใน.tmux.confไฟล์เพื่ออนุญาตให้ทางลัดทั้งสองทำงานได้ ดูเหมือนว่ามาตรฐาน set -g prefix C-a คำสั่งจะยกเลิกการตั้งค่าCtrl+ bทางลัด ฉันได้ลองสิ่งนี้ด้วย: set -g prefix C-a set -g prefix C-b แต่บรรทัดที่สองจะยกเลิกCtrlเครื่องหมาย +a
17 tmux 

4
ใช้ Ctrl + B ในน้อยกว่าภายใน tmux
ฉันใช้Ctrl+Bคำนำหน้าคำสั่งในtmuxอย่างไรก็ตามการปะทะนี้ด้วยCtrl+Bในlessซึ่งใช้สำหรับการเลื่อนขึ้นไฟล์ ฉันจะทำให้เรื่องนี้ทำงานได้อย่างไร ฉันต้องตั้งค่าคำนำหน้าคำสั่งอื่นtmuxหรือไม่ ฉันไม่ต้องการเรียนรู้การผูกคีย์ใหม่ถ้าฉันสามารถหลีกเลี่ยงได้
17 tmux 

1
วิธีการคัดลอกจาก / ไปยัง 'คลิปบอร์ด' ของ tmux ด้วย shell shell?
เมื่อทำงานในสภาพแวดล้อมของเชลล์ฉันใช้งานบ่อยครั้งในการคัดลอก 'การส่งออกไพพ์กลาง' รอบ ๆ (เช่นจาก / ไปยังบรรณาธิการที่ใช้งานแล้วไปยังเชลล์อื่น ๆ เครื่องอื่น ๆ ฯลฯ ) เมื่ออยู่ในสภาพแวดล้อมที่หน้าต่างวิธีที่ง่าย (และทั่วไป) ในการแก้ปัญหานี้มักจะผ่านคลิปบอร์ดของระบบเช่น: X11: ... | xsel -i/xsel -o | ... OS X: ... | pbcopy/pbpaste | ... ฉันจะได้รับพฤติกรรมที่สะดวกในทำนองเดียวกันโดยใช้ตัวช่วยการคัดลอก / วาง tmux ได้อย่างไร?

2
ฉันจะผูกกับ Shift + {ซ้ายขวา} ใน tmux ได้อย่างไร
ฉันกำลังดูtmuxจากscreenและมีการชนในขณะที่กำหนดค่าการtmuxผูกคีย์(สูงกำหนด!) ปัญหาคือในฉัน.screenrcฉันมี bindkey ^[[d prev bindkey ^[[c next bindkey ^[[a title bindkey ^[[b screen 1 และงานผูก (เดิมมาจากrxvt-tabbedex) แต่tmuxเห็นได้ชัดว่าไม่มีทางที่จะผูกคำสั่งกับShiftLeft/ Rightชุดค่าผสม โปรดพิสูจน์ว่าฉันผิด

3
เซสชัน tmux ใหม่ไม่ได้มาไฟล์ bashrc
สรุป เมื่อฉันสร้างเซสชั่น tmux ใหม่พรอมต์ของฉันจะดึงจากการกำหนดค่า bash เริ่มต้นและฉันต้องเรียกใช้ด้วยตนเองที่source ~/.bashrcกำหนดเอง การวิเคราะห์ ฉันใช้เครื่อง RHEL 7 ฉันเริ่มสังเกตเห็นพฤติกรรมนี้หลังจากที่ทุบตีอัปเดตไปพักหนึ่ง แต่ยังไม่ได้ไปถามคำถามจนถึงตอนนี้ ตัวอย่างเช่นฉันปรับแต่งการแจ้งเตือนของฉันให้มีลักษณะดังนี้: [user@hostname ~]$ เมื่อใดก็ตามที่ฉันเริ่มต้นเซสชั่น tmux ใหม่มันใช้สิ่งที่ดูเหมือนจะเป็นค่าเริ่มต้นทุบตี: -sh-4.2$ การดำเนินการอย่างรวดเร็วของการsource ~/.bashrcแก้ไขปัญหาเสมอ แต่ก็น่ารำคาญที่ฉันต้องทำเช่นนี้ทุกครั้งที่ฉันต้องการแก้ไขสิ่งเล็ก ๆ มีความคิดเห็นเกี่ยวกับวิธีการใช้ tmux ในการทำเช่นนี้อีกครั้งโดยอัตโนมัติหรือไม่? หากต้องการข้อมูลเพิ่มเติมใด ๆ ฉันยินดีที่จะให้ tmux.conf สำหรับการอ้างอิงฉันมีtmux.confไฟล์ของฉันด้านล่างแม้ว่ามันจะไม่ค่อยเป็นสิ่งที่คุณจะเรียกว่ากำหนดเองได้ setw -g mode-keys vi # reload tmux.conf bind r source-file ~/.tmux.conf \; display-message " ✱ ~/.tmux.conf is reloaded"
17 bash  tmux 

3
ไฮไลต์การค้นหาโหมดการคัดลอก tmux
มีวิธีใดที่จะเน้นข้อความค้นหาในโหมดคัดลอก tmux หรือไม่? ด้านล่างเป็น tmux config ของฉัน: # remap prefix to Control + a set -g prefix C-a unbind C-b bind C-a send-prefix bind a send-prefix # force a reload of the config file unbind r bind r source-file ~/.tmux.conf # set window start from 1 set -g base-index 1 …
16 tmux  colors 

2
ฉันสามารถเห็นสิ่งที่เกิดขึ้นในเซสชั่น tmux โดยไม่ต้องแนบมันได้หรือไม่
บ่อยครั้งที่ฉันจะใช้tmuxเพื่อเริ่มงานที่จะทำงานสักพัก ฉันจะกลับไปเป็นระยะและตรวจสอบโดยใช้tmux -aแล้วยกเลิกการเชื่อมต่อหากยังไม่เสร็จสมบูรณ์และตรวจสอบอีกครั้งในภายหลัง มีวิธีใดที่จะเห็นภาพรวมคร่าวๆของสิ่งที่เกิดขึ้นในเซสชั่นโดยไม่ต้องแนบอย่างเต็มที่? ฉันกำลังมองหาบางสิ่งบางอย่างเช่นในทางทฤษฎีtailในเซสชั่นเพื่อรับบิตสุดท้ายของการส่งออก (แต่ถ้าฉันสามารถหลีกเลี่ยงการสร้างไฟล์อื่นที่มีสำเนาของเอาท์พุทดีกว่า) อาจจะติดและถอดมันทันทีก็สามารถใช้ได้เช่นกัน ฉันพยายามบันทึกการกดแป้นบางทีคำสั่งดังกล่าวอาจถูกดำเนินการจากระยะไกล เช่นssh root@server tmux --tail?
16 tmux 

4
คัดลอก / วางการเลือกข้อความระหว่าง tmux และคลิปบอร์ด
ฉันกำลังเรียกใช้ tmux รุ่นล่าสุด (จากที่เก็บ git) และ xclip (0.12) และฉันต้องการใช้การผูกคีย์บอร์ดของ Emacs เหมือนเพื่อเลื่อนไปมากับข้อความcopy-modeคัดลอก ( M-w) ตัวเลือกไปยังคลิปบอร์ดและ วาง ( C-y) จาก / ไปยังบัฟเฟอร์การคัดลอกไปยังคลิปบอร์ด จนถึงตอนนี้ฉันสามารถวางข้อความด้วยC-yและย้ายไปรอบ ๆcopy-modeด้วยการผูกคีย์บอร์ด Emacs เหมือน แต่ฉันยังคงไม่สามารถคัดลอกข้อความจาก tmux buffer (เช่นในcopy-mode) ฉันพบกระทู้นี้สำหรับการคัดลอกบัฟเฟอร์ทั้งหมดไปยังคลิปบอร์ด (และ viceversa) แต่ดูเหมือนจะไม่ทำงานสำหรับฉัน นอกจากนี้ในtmux-usersรายชื่ออีเมลผมก็บอกว่ารุ่นล่าสุดของ tmux (เฉพาะใน repo คอมไพล์) copy-pipeจัดให้มีคำสั่งที่เรียกว่า หน้าคนพูดเกี่ยวกับคำสั่งนี้ต่อไปนี้: หนึ่งคำสั่งในการยอมรับอาร์กิวเมนต์คัดลอกไพพ์ซึ่งคัดลอกส่วนที่เลือกและไพพ์ไปยังคำสั่ง ตัวอย่างเช่นต่อไปนี้จะผูก 'C-q' เพื่อคัดลอกส่วนที่เลือกลงใน / tmp เช่นเดียวกับการวางบัฟเฟอร์: bind-key -temacs-copy C-q copy-pipe …

2
มีวิธีการหาสาเหตุที่ tmux เกิดปัญหาหรือไม่
ฉันพยายามเปลี่ยนจากการใช้ VNC เป็น tmux tmux ของฉันหยุดทำงานอย่างน้อยหนึ่งครั้งในหนึ่งสัปดาห์และฉันไร้เหตุผลทำไมมันถึงเกิดขึ้น VNC แทบจะล้มเหลวและความผิดพลาดรายสัปดาห์นี้เป็นอันตรายอย่างมากสำหรับฉันที่จะเปลี่ยนโดยสิ้นเชิง มีวิธีที่ฉันสามารถหาสาเหตุที่ tmux ล่มหรือไม่? .tmux.conf ของฉันค่อนข้างเรียบง่าย #Don't show the green ribbon below set -g status off #Select panes by mouse click set -g mouse-select-pane on #enable scrolling by mouse in tmux set-window-option -g mode-mouse on #enable resize of pane by mouse set -g …
15 tmux 

3
ฉันจะส่งต่อคีย์ ssh ที่ส่งต่อไปยัง tmux แล้วได้อย่างไร?
ฉันกำลังเชื่อมต่อผ่าน SSH จากเครื่องที่จัดเก็บคีย์ของฉันส่งต่อไปยังเครื่องที่สองจากนั้นลองใช้คีย์จากภายใน tmux ฉันดูเหมือนจะ "หลวม" การส่งต่อเมื่อเข้าสู่ tmux จะ "ส่งต่ออีกครั้ง" เพื่อให้ฉันสามารถใช้กุญแจของฉันจากภายใน tmux ได้อย่างไร? $ ssh [server] -o ForwardAgent=yes $ git pull # Succeeds. $ /bin/bash $ git pull # Still succeeds, despite new shell. $ exit $ tmux attach $ git pull # Permission denied (publickey)
15 shell  ssh  tmux 

2
ตั้งค่าสีแท็บ tmux ที่แอ็คทีฟ
เป็นไปได้หรือไม่ที่จะเปลี่ยนพื้นหลังของแท็บ tmux ปัจจุบัน (ปัจจุบัน)? ฉันใช้tmux 1.9บน Ubuntu 15.04 $ tmux -V tmux 1.9 ฉันพยายามทำ: set-option -g pane-active-border-fg red แต่ผลลัพธ์ไม่เปลี่ยนแปลง: ฉันคาดว่า3-bash*จะมีพื้นหลังสีแดง

4
ทำมิเรอร์บานหน้าต่างระหว่างสองหน้าต่าง
เป็นไปได้หรือไม่ที่จะมีบานหน้าต่างเดียวกันปรากฏในสองหน้าต่างที่แตกต่างกันของเซสชัน tmux เดียว? ฉันมักจะมีการแบ่งแนวนอนเดียวในหน้าต่างหลักของฉันด้วยเป็นกลุ่มในบานหน้าต่างด้านบน (ประมาณ 80-90% ของความสูงของสถานี) และบรรทัดคำสั่งในบานหน้าต่างด้านล่างที่ฉันเรียกใช้โปรแกรมที่ฉันกำลังทำงานอยู่ เนื่องจากหน้าต่างด้านล่างมีขนาดเล็กมากฉันมักจะไม่เห็นข้อผิดพลาดในการแสดงผลและการใช้แป้นพิมพ์ลัดของ tmux เพื่อเลื่อนกลับมาน่าเบื่อ ฉันต้องการให้หน้าต่างที่สองของฉันแนบกับบานหน้าต่างเดียวกันเพื่อที่ว่าถ้าฉันต้องการดูผลลัพธ์ข้อผิดพลาดมากขึ้นฉันสามารถสลับไปที่หน้าต่างที่สองได้อย่างรวดเร็วโดยไม่จำเป็นต้องจัดการกับ scrollback เป็นไปได้ไหม (ฉันเดาว่าทางเลือกหนึ่งจะใช้สิ่งที่ต้องการทีออฟเพื่อเขียน stdout ไปยังล็อกไฟล์และท้ายว่าในหน้าต่างที่สองของฉันฉันหวังว่ามันไม่จำเป็นเลย)
14 tmux 

2
tmux เทียบเท่ากับหน้าจอ GNU: โหมดการตัดคำ
ฉันเป็นผู้ใช้หน้าจอเป็นเวลานานพยายามที่จะข้ามไปยัง tmux คุณสมบัติหน้าจอเดียวที่ฉันใช้คือความสามารถในการตัดทอนCtrla :set wrapผลลัพธ์ สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อทำการปรับแต่งล็อกไฟล์หรือติดตามเซสชันที่มีบรรทัดที่มีความยาวหลายร้อยตัวอักษร ฉันได้อ่านmanหน้าและ googled อย่างกว้างขวางและไม่สามารถหาคำสั่งที่เทียบเท่าหรือทำงานได้โดยใช้คำสั่งเชลล์ สิ่งที่ใกล้เคียงที่สุดที่ฉันสามารถทำได้คือการวางท่อทุกอย่างเพื่อให้less -Sน้อยลงในโหมด "ติดตาม"
14 tmux 

4
Escape sequences ในเอาต์พุตของสคริปต์ที่เรียกจากแอ็พพลิเคชัน ncurses
ขณะนี้ฉันกำลังเรียกใช้ mcabber เป็นลูกค้า Jabber ของฉัน (ซึ่งใช้ ncurses) ในเซสชั่น tmux บน homeserver ของฉัน ในพื้นที่ฉันเรียกใช้ iTerm2 เป็นเทอร์มินัลอีมูเลเตอร์ซึ่งรองรับการกระตุ้นการแจ้งเตือนคำรามผ่านลำดับการหลีกเลี่ยงตัวละคร หมายเหตุ: ทั้งหมดechoในคำถามนี้ทำงานเหมือนprintf %bหรือecho -eในทุบตีและ echoGNU เช่นecho "\e]9;foobar\007"ทำให้ iTerm2 ส่งข้อความคำรามด้วยข้อความ "foobar" อย่างไรก็ตามเมื่ออยู่ในเซสชั่น tmux ลำดับการหลีกเลี่ยงจะถูกทำลาย ดังนั้นการใช้ลำดับ escape character ที่เป็นกรรมสิทธิ์\Ptmuxสามารถใช้ดังนี้: echo "\ePtmux;\e\e]9;foobar\007\e\\" สิ่งนี้ทริกเกอร์ข้อความคำรามจากภายในเซสชัน tmux อย่างไรก็ตามเมื่อฉันใช้สิ่งนี้ในสคริปต์เหตุการณ์ mcabber ของฉันที่ถูกไล่ออกเมื่อได้รับข้อความใหม่จะไม่มีการแจ้งเตือนใด ๆ ขึ้นมาราวกับว่าเสียงสะท้อนถูกส่งไปยังเทอร์มินัลผิด ฉันคิดว่าสิ่งนี้เกี่ยวข้องกับ mcabber ซึ่งเรียกสคริปต์ว่าเป็นแอปพลิเคชัน ncurses ดังนั้นผลลัพธ์จากสคริปต์ทุบตีปกติของฉันจะหายไปและ iTerm 2 ไม่เคยเห็นเลย ฉันพยายามโทร …


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