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

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

2
Ctrl-C ไม่ทำงานกับเซสชันที่ไม่ได้แยก pppd
ฉันมี ARM คณะ mini2440 และฉันได้ใส่ฐาน Debian ระบบ 6.0 multistrapที่มันใช้ ฉันเคยtmuxเรียกใช้หลายกระบวนการในหน้าต่างที่ต่างไปจาก/etc/rc.localนี้ ฉันเชื่อมต่อกับบอร์ดโดยใช้พอร์ตอนุกรมและรายการ inittab เพื่อเรียกใช้gettyบนพอร์ตนั้น ฉันใช้picocomเป็นตัวสื่อสารแบบอนุกรม เมื่อรูทล็อกอิน~/.bashrcให้แนบเขาเข้ากับเซิร์ฟเวอร์ tmux ที่รันอยู่แล้วและสามารถติดตามกระบวนการได้อย่างง่ายดาย exec tmux attach-session -t "main"คำสั่งที่เกิดขึ้นจริง tmux รันด้วยการกำหนดค่าเริ่มต้น ทุกอย่างทำงานได้ยกเว้นหนึ่งในกระบวนการ (เชลล์สคริปต์รอบ ๆpppd) ไม่ได้รับCtrlcจากเทอร์มินัลในขณะที่กระบวนการอื่นทำ ยังใช้Ctrl\งานได้ ยังใช้ kill -INT <pppd_pid>งานได้ แต่ใช้kill -INT <shellscript_pid>ไม่ได้ ฉันต้องCtrlcทำงานจริงๆ เกิดอะไรขึ้นกับการตั้งค่านี้ แก้ไข: นี่คือผลลัพธ์ของstty -aในเชลล์สคริปต์ก่อนหน้านี้pppd: speed 38400 baud; rows 23; columns 80; line = …
12 linux  debian  terminal  tmux  ppp 

1
แนวทางปฏิบัติที่ดีที่สุดสำหรับ SSH, tmux & GnuPG Agent
ฉันกำลังพยายามรวมซอฟต์แวร์เข้ารหัสของฉันเข้ากับ GnuPG และฉันพบปัญหาที่ทำให้สับสน unitsprimary ของฉันคือเซิร์ฟเวอร์หัวขาดและฉันทำงานเฉพาะใน tmux ไม่มีเซสชัน X ดังนั้นฉันจึงกำหนดค่า gpg-agent ให้ใช้ pinentry-curses ฉันได้กำหนดค่า gpg-agent ให้เรียกเข้าสู่ระบบด้วยการจำลอง ssh-agent ด้วยสคริปต์นี้: if pgrep -u "${USER}" gpg-agent >/dev/null 2>&1; then eval `cat $gnupginf` eval `cut -d= -f1 $gnupginf | xargs echo export` else eval `gpg-agent -s --enable-ssh-support --daemon` fi ฉันได้เพิ่มคีย์ ssh ของฉันไปที่ gpg-agent แล้ว แต่เมื่อฉันลองเซสชัน …
12 ssh  tmux  gpg 

2
นามแฝงและ tmux
นามแฝงที่กำหนดไว้ใน.bash_aliasesและไม่ได้ทำงานใน.bashrctmux สิ่งนี้สามารถเปลี่ยนแปลงได้ในการกำหนดค่าบางอย่างดังนั้นชื่อแทนจะทำงานภายใต้tmuxหรือไม่

2
ปัญหาในการใช้ปุ่ม Ctrl + Arrow ใน Vim เมื่อใช้ Byobu กับ tmux
ในกลุ่มฉันได้ตั้งปุ่ม Ctrl + ลูกศรเพื่อข้ามคำ มันใช้งานได้ดีเมื่อใช้ Vim ภายใน gnome-terminal อย่างไรก็ตามเมื่อใช้byobu (tmux) มันจะแสดงพฤติกรรมแปลก ๆ : มันจะลบทุกอย่างหลังจากเคอร์เซอร์ สำหรับการอ้างอิงนี่คือการตั้งค่ากลุ่มของฉัน: :inoremap <C-Left> <C-\><C-O>b :inoremap <C-Right> <C-\><C-O>w
12 tmux  byobu  vim 

2
tmux: ปุ่มแมปไปยังบานหน้าต่างด้านซ้าย / ขวา / บน / ลง
Tmux ช่วยให้หนึ่งที่จะย้ายผ่านบานหน้าต่างใช้+Ctrl-b(→, ←, ↑, ↓) ฉันต้องการทำการแมปนี้กับ: Ctrl-b+ Ctrl-(l, j, i, k). สำหรับการอ้างอิงเค้าโครงของปุ่มl,j,i,kนั้นคล้ายกับปุ่มลูกศร แต่สามารถพิมพ์ได้ง่ายกว่าโดยไม่ต้องขยับมือ ฉันแก้ไขบางสิ่งที่นี่และที่นั่น.tmux.confแต่ฉันไม่สามารถหาข้อมูลเกี่ยวกับวิธีการรีคำสั่งข้างต้น
12 tmux 

1
การใช้ตัวแปรสภาวะแวดล้อมในไฟล์ tmux.conf
เป็นไปได้ที่จะใช้ตัวแปรสภาพแวดล้อมในไฟล์ tmux.conf หรือไม่? ฉันพยายามตั้งค่าเส้นทางเริ่มต้นเป็นตัวแปรสภาพแวดล้อม ขณะนี้สิ่งที่ฉันพยายามคือ: set -g default-path $MYVAR ต่อไปฉันต้องการตรวจสอบว่ามีการตั้งค่า $ MYVAR ไว้แล้วหรือไม่ดังนั้นฉันสามารถทำได้: if($MYVAR == "") set-environment -g MYVAR /somepath/ ความคิดใด ๆ

3
Tmux - รับบานหน้าต่าง # ของแต่ละบานหน้าต่างจากสคริปต์?
มีวิธีการหาดัชนีบานหน้าต่างของบานหน้าต่างเฉพาะใน Tmux หรือไม่ ฉันรู้ว่าฉันสามารถทำสิ่งที่ชอบ: tmux display-message -p "#{pane_index}" แต่ใช้งานได้เฉพาะในบานหน้าต่างที่ใช้งานอยู่ ฉันต้องการให้มันทำงานกับทุกบานที่มันทำงานอยู่ปกติแล้วมันยากที่จะเรียกใช้สคริปต์ในบานหน้าต่างที่ไม่ใช่บานหน้าต่างที่ใช้งานอยู่ แต่คุณสามารถทำได้ถ้าคุณใช้:set-window-option synchronize-panesเพื่อซิงค์อินพุตระหว่างบานหน้าต่างทั้งหมด ฉันจะใช้สิ่งนี้ได้อย่างไร ในงานของฉันฉันต้องเชื่อมต่อกับเซิร์ฟเวอร์ที่เหมือนกันหลายตัวใน load balancer พร้อมกันซึ่งฉันทำกับบานหน้าต่าง Tmux ปกติฉันจะเปิดฟีเจอร์การซิงโครไนซ์บานหน้าต่างเพื่อให้ฉันมีสิ่งที่ฉันพิมพ์ส่งไปยังแต่ละบานหน้าต่างในเวลาเดียวกัน มันใช้งานได้ดี สิ่งที่ฉันพบคือฉันต้องการเชื่อมต่อกับเซิร์ฟเวอร์และทำสิ่งที่ไม่ซ้ำกับแต่ละบานหน้าต่างในบางครั้งโดยใช้ "ดัชนีบานหน้าต่าง" เดียวกันทุกครั้ง ตัวอย่างเช่นฉันจะใช้คำสั่งดังนี้: ssh NODE_$(get_pane_number) ซึ่งเมื่อทำข้อมูลให้ตรงกันและทำงานในแต่ละบานหน้าต่างจะเรียกใช้คำสั่งต่อไปนี้ในหน้าต่างที่มี 4 บานหน้าต่าง: ssh NODE_0 ในบานหน้าต่าง 0 ssh NODE_1 ในบานหน้าต่าง 1 ssh NODE_2 ในบานหน้าต่าง 2 ssh NODE_3 ในช่อง 3 แน่นอนฉันสามารถสคริปต์นี้ แต่จะทำงานได้ดีก่อนที่ฉันจะเริ่มซิงโครไนซ์อินพุต มีบางครั้งที่ฉันต้องการทำสิ่งนี้หลังจากที่ฉันเริ่มซิงโครไนซ์อินพุตเช่นกัน
12 tmux 

3
เมื่อออกจากเทอร์มินัลล่าสุดในเซสชั่น tmux มันสามารถสลับไปยังอีก?
เมื่อฉันออกจากเทอร์มินัลสุดท้ายในเซสชั่น tmux มันจะปิด tmux โดยอัตโนมัติและนำฉันกลับไปที่เทอร์มินัลหลัก เป็นไปได้หรือไม่ที่จะเปลี่ยน tmux ไปเป็นเซสชันอื่นที่ทำงานอยู่แล้วแทนที่จะปิด? ฉันสร้างเซสชันที่มีชื่อใหม่สำหรับทุกงานที่ฉันทำงานเช่น TRxxx อีเมลเกา ฯลฯ และเมื่อฉันทำกับหนึ่งในนั้นฉันปิดเทอร์มินัลทั้งหมดโดยใช้ทางออกในทุก ๆ เมื่อคุณรัน exit ในเทอร์มินัลสุดท้ายของเซสชัน tmux จะนำคุณกลับไปที่เทอร์มินัลหลัก แต่เป็นไปได้ไหมที่จะเปลี่ยนเป็นเซสชันเปิดอื่น ๆ แทนดังนั้นฉันไม่ต้องติดตั้งใหม่ คำถามนี้คล้ายกับ " Kill a tmux session และเลือกอีก tmux session " แต่ฉันต้องการปิดเทอร์มินัลด้วยวิธีที่ดีโดยใช้ exit แทนการฆ่าหน้าต่าง
12 tmux 

1
การล้างวิดีโอ YouTube ในช่วงทุบตีในโหมด ASCII
ฉันพบวิธีดูวิดีโอ YouTube ในเทอร์มินัลในโหมด ASCIIแล้ว แต่เป้าหมายของฉันคือดูวิดีโอในเซสชันทุบตีโดยไม่ต้องเปิดหน้าต่างอื่น ดังนั้นสมมติว่าฉันมีtmux เซสชันอยู่แล้วและฉัน: $ watch-youtube <video-url> ฉันต้องการดูที่นั่นในtmuxหน้าต่าง / บานหน้าต่าง (แยก) ฉันจะทำสิ่งนั้นได้อย่างไร ผลลัพธ์ที่เกี่ยวข้อง $ mpv --vo help Available video outputs: vdpau : VDPAU with X11 opengl : Extended OpenGL Renderer xv : X11/Xv sdl : SDL 2.0 Renderer opengl-old : OpenGL (legacy VO, may work better on …
12 terminal  tmux 

4
ฆ่าเซสชัน tmux และเลือกเซสชัน tmux อื่น
ฉันพยายามผูกXให้ทำต่อไปนี้: แจ้งให้ผู้ใช้ทราบว่าเซสชันควรจะถูกฆ่าหรือไม่ ถ้าyถูกป้อนให้ฆ่าเซสชัน หลังจากเซสชั่นถูกฆ่าตายเลือกเซสชั่นอื่น (ครั้งสุดท้ายก่อนหน้าหรือเซสชั่นถัดไป) คำสั่งที่คล้ายกันบางคำที่ไม่ถูกต้อง ฆ่าเซสชันและปิดเทอร์มินัล: bind X confirm-before -p "Kill #S (y/n)?" kill-session แจ้งผู้ใช้ให้รับชื่อเซสชันเพื่อฆ่าและเลือกเซสชันถัดไปหลังจาก kill: bind X command-prompt -p "kill:" "switch-client -n \; kill-session -t '%%'" ฉันไม่พบตัวอย่างคำสั่งที่คล้ายกัน นี่คือวิธีแก้ปัญหาที่ใช้งานไม่ได้: bind X confirm-before -p "Kill #S (y/n)?" "SESSION='#S' \; \ switch-client -n \; kill-session -t \"$SESSION\""
11 tmux 

5
เทอร์มินัลมัลติเพล็กเซอร์มีประโยชน์ใด ๆ เมื่อใช้กับตัวจัดการหน้าต่างเรียงต่อกันหรือไม่?
ทั้งเทอร์มินัลมัลติเพล็กเซอร์ (หน้าจอ tmux) และตัวจัดการหน้าต่างเรียงต่อกันที่ทำงานด้วยคีย์บอร์ด (ratpoison, dwm, xmonad) ให้การทำงานที่คล้ายกัน มีประโยชน์ในการใช้ทั้งสองอย่างในเวลาเดียวกันหรือไม่? แล้วปัญหาที่อาจเกิดขึ้นล่ะ

7
tmux ทำให้แอนคอนดาใช้แหล่งไพ ธ อนอื่น
ตกลงดังนั้นฉันอยู่ในสภาพแวดล้อมของฉันและฉันวิ่งงูหลามที่ ฉันเข้าใจ /home/comp/anaconda3/envs/env1/bin/python ตอนนี้ถ้าฉันเริ่ม tmux จากนั้นให้ run source enable env1 จากนั้นฉันจะได้รับ python แบบไหน /home/comp/anaconda3/bin/python แม้ว่าฉันจะเปิดใช้งานสภาพแวดล้อมของฉัน ฉันจะทำให้งูใหญ่มองเห็นเส้นทางเดียวกันภายใน tmux ได้อย่างไร?
11 python  tmux 

3
tmux ไม่กำหนดค่า color PS1 ให้พร้อม
เมื่อเร็ว ๆ นี้ฉันตัดสินใจที่จะเปลี่ยนตัวแปร PS1 ของฉันเพื่อรองรับสี Solarized ที่สวยงามเพื่อความเพลิดเพลินในการรับชมเครื่อง เมื่อไม่ได้อยู่ในเซสชั่น tmux ทุกอย่างยอดเยี่ยม! สายรุ้งม้ายูนิคอร์นและพรอมต์ที่แตกต่าง! เย็น! อย่างไรก็ตามปัญหาอยู่ภายใน tmux อย่างไรก็ตาม ฉันได้รับการตรวจสอบว่าค่าของ PS1 เป็นสิ่งที่ผมคาดหวังว่ามันจะเป็นและเช่นเดียวกับมันคือเมื่อ tmux \[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]ไม่ได้ทำงานคือ นามแฝงทั้งหมดของฉัน ฯลฯ ใน. bash_profile ของฉันยังทำงานได้ตามที่คาดไว้ tmux ยังแสดงสีโดยไม่เกิดเหตุการณ์ตามecho -ne "\033[1;33m hi"ที่คาดgls --colorไว้ บรรทัดที่เกี่ยวข้องในปัจจุบันใน. bash_profile ของฉันคือexport PS1="\[\033]0;\w\007\]\[\[\]\]\u\[\]@\[\[\]\]\h\[\]:\[\]\W\[\]$ \[\]"ถึงแม้ว่าในตอนแรกฉันจะหาสคริปต์ที่อยู่ในไฟล์. bash_prompt เพื่อจัดการกับเงื่อนไขบางอย่าง ฯลฯ ฉันพยายามเปลี่ยนกลับเป็นเวอร์ชันที่ง่ายกว่า การดำเนินการbashจะทำให้พรอมต์เปลี่ยนสี แต่ต้องทำในแต่ละบานหน้าต่าง export PS1=[that long string I've already posted]จะไม่ …
11 bash  osx  tmux  prompt 

2
ลำดับการหลีกหนี gnome-terminal ANSI สำหรับ“ CTRL + arrow / s” คืออะไร?
ฉันพยายามที่จะกำหนดค่าทุบตีฉัน~/.inputrcจะตั้งค่าเหล่านี้ (หมายเหตุ: ←, →หมายถึงซ้ายและขวาปุ่มลูกศร) Ctrl+ ←- ควรกระโดดกลับคำ Ctrl+ →- ควรกระโดดไปข้างหน้าคำ ขณะนี้ฉันมีสิ่งนี้ในของฉัน~/.inputrcและมันใช้งานไม่ได้ Ctrl + arrowผลิตอะไร "\eC-5C":forward-word "\eC-5D":backward-word ฉันแน่ใจว่าลำดับการหลบหนีของฉันผิด ลำดับการหลีกเลี่ยงที่ถูกต้องสำหรับCtrl + arrowชุดค่าผสมคืออะไร? terminal: tmux ภายใน gnome-terminal

2
การใช้ตัวแปรสภาวะแวดล้อมในคำสั่งเชลล์แถบสถานะของ Tmux
ฉันกำลังพยายามที่จะสร้าง tmux US Eastern Time :: UTC :: Central European Timeแถบสถานะซึ่งแสดงให้เห็นว่าสามเขตเวลา: การใช้TZตัวแปรสภาพแวดล้อมทำให้dateคำสั่งแสดงเวลาในเขตเวลาที่กำหนด ฉันพยายามทำด้วยการตั้งค่า tmux.conf นี้: set -g status-right "#[fg=white]#S #I:#P #[fg=yellow]:: %d %b %Y #[fg=green]:: #(TZ=America/New_York date +%H:%M) :: #(date -u +%H:%M) UTC :: #(TZ=Europe/Belgrade date +%H:%M)" แต่ผ่านไม่ทำงานภายในของTZ=foo #(…)(ฉันได้รับเซิร์ฟเวอร์dateแทนสิ่งที่ฉันคาดไว้) ข้อเสนอแนะใด ๆ

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