User Tools

Site Tools


Writing /net/www/auesnard/teaching/data/cache/c/c0e37653382f0a3bba77dea63aebe2c6.metadata failed
screen:index
Writing /net/www/auesnard/teaching/data/cache/b/b917139305956507b1746900fb337322.xhtml failed

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
screen:index [2018/09/20 16:16] – [TMUX Tips] orelscreen:index [2020/09/01 19:44] orel
Line 18: Line 18:
 Kill a remote screen session Kill a remote screen session
   $ screen -S sessionid -X quit   $ screen -S sessionid -X quit
 +
 +Launch several commands in several windows, but in the same session:
 +
 +  $ screen -S sessionid -t win1 -A -d -m bash
 +  $ screen -S sessionid -X screen -t win2 -A -d -m bash
 +  $ screen -ls sessionid
 +  
 +Reattach all windows (use "ctrl-a + w" to list all windows):
 +
 +  $ screen -r sessionid
 +
 +
 +Reattach a given window: ???
 +
 +Shortcuts:
 +
 +  * Ctrl+a d : detach
 +  * ...
 +
 +
  
 ===== TMUX Tips ===== ===== TMUX Tips =====
Line 29: Line 49:
 Start a new session 'sessionid' and a first window in this session: Start a new session 'sessionid' and a first window in this session:
  
-  $ tmux new-session -d -s sessionid -n win0 bash+  $ tmux new-session -s sessionid -n win0              # run an interactive shell in foreground 
 +  $ tmux new-session -s sessionid -n win0 ./test.sh    # run a command in foreground   
 +  $ tmux new-session -d -s sessionid -n win0 ./test.sh # run a command in background (detached)
  
 Start another window in this session: Start another window in this session:
  
-  $ tmux new-window -t sessionid -n win1 bash+  $ tmux new-window -t sessionid -n win1 bash  
  
 List windows and panes: List windows and panes:
Line 41: Line 63:
   $ tmux list-panes -t sessionid:   # list all panes in window 0 of session   $ tmux list-panes -t sessionid:   # list all panes in window 0 of session
      
-Attach session to the end user's terminal (tmux in foreground):+Attach session to the end user's terminal (tmux in foreground). Then, you can get multiple displays of a session:
  
   $ tmux attach-session -t sessionid   $ tmux attach-session -t sessionid
      
-Join / Break windows panes...+Enable mouse (useful to switch windows or select panes in tmux) :
  
-  $ tmux join -t qemunet:0 # ??? +  $ tmux set-option -t sessionid -g mouse on  
-  $ tmux break ...+   
 +Moving a source pane into a target window: 
 +   
 +  $ tmux list-panes -a 
 +    pouet:0.0: ... 
 +    pouet:1.0: ...   <- current one 
 + 
 +  mv src pane 'pouet:1.0' to win 'pouet:0' 
 +  $ tmux join-pane -t pouet:0  
 + 
 +  $ tmux list-panes -a 
 +    pouet:0.0: ... 
 +    pouet:0.1: ...   <- current one 
 +     
 +In order to reverse the 'join-pane' operation, use break-pane: 
 + 
 +  $ tmux list-panes -a 
 +    pouet:0.0: ..
 +    pouet:0.1: ...   <- current one 
 + 
 +  $ tmux break-pane # break src pane off its current window 
 + 
 +  $ tmux list-panes -a 
 +    pouet:0.0: ... 
 +    pouet:1.0: ...   <- current one 
 +    
 +Instead of moving an existing pane, you can use 'split-window' to create a new pane: 
 + 
 +  $ tmux list-panes -a 
 +    pouet:0.0: ... 
 +    pouet:1.0: ...   <- current one 
 + 
 +  $ tmux split-window 
 + 
 +  $ tmux list-panes -a 
 +    pouet:0.0: ... 
 +    pouet:1.0: ... 
 +    pouet:1.1: ...   <- current one 
 + 
 + 
 +If you want to reverse the prevous 
 + 
 +  $ tmux break-pane
  
 Kill session: Kill session:
Line 54: Line 118:
   $ tmux kill-session -t sessionid   $ tmux kill-session -t sessionid
  
-Configure your session:+Link a window/pane in another session (multiple display):
  
-  $ tmux set-option -t sessionid -g default-shell /bin/bash  +  $ tmux new-session -s pouet1 
-  # enable to select panes/windows  with mouse (howewer, hold shift key, to copy/paste with mouse+  $ tmux new-session -s pouet2 
-  $ tmux set-option -t sessionid -g mouse on +  $ tmux list-panes -a 
 +    pouet1:0.0: ... %0 (active) 
 +    pouet2:0.0: ... %1 (active
 +  $ tmux link-window -s pouet1:0.0 -t pouet2 
 +  $ tmux list-panes -a 
 +    pouet1:0.0: ... %0 (active) 
 +    pouet2:0.0: ... %1 (active) 
 +    pouet2:0.0: ... %0 (active) 
 +     
 +==== Useful Shortcuts ====
  
-  $ tmux set-option -g prefix C-b   default prefix +  * ctrl-b d => detach 
-  $ tmux bind-key C-c kill-session  # press "C-b C-c" to kill session! +  * ctrl-b w => list windows and select it 
-  tmux set-window-option -g window-status-current-bg red +  * ctrl-b n => next window 
-  tmux set-option -g status-left '' +  * ctrl-b p => previous window 
-  $ tmux set-option -g status-right '#[fg=colour233,bg=colour241,bold] %d/%m/%Y #[fg=colour233,bg=colour245,bold] %H:%M:%S '+  * ctrl-b # => go to window # (select by number) 
 +  * ctrl-b ? => help 
 +  * ctrl-=> new shell window 
 +  * ctrl-b x => kill current pane 
 + 
 +I use to rebind 'ctrl-b x' to kill current session (or server), like that: 
 + 
 +  tmux bind-key x kill-session   
 + 
 +  
 +If you want to list current tmux sessions: 
 + 
 +  tmux ls 
 +   
 +If you want to (re-)attach your session (assuming there is only one running session): 
 + 
 +  tmux a 
 +   
 +If you want to kill all...
  
 +  tmux kill-server
  
 +Enjoy!
screen/index.txt · Last modified: 2024/03/18 15:06 by 127.0.0.1