Contenu | Rechercher | Menus

Annonce

La nouvelle clé USB Ubuntu-fr est en prévente
Rendez-vous sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#51 Le 20/04/2011, à 11:50

sachacr

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Ah tiens bizare moi ca ne me retourne que deux ligne :

  C-a S       (split)       Split the current region into two new ones.
  (split  screen  mode).  But if the type is set to always screen shows a

Ca doit être un problème de version ou de distribution... :s

Installed Packages
screen.x86_64                                                                                                      4.0.3-3.el5                                                                                                      installed

Hors ligne

#52 Le 20/04/2011, à 22:12

fabux

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Peut-être:

$:dpkg -l screen
screen                   4.0.3-14ubuntu4 
$:screen -v
Screen version 4.00.03jw4 (FAU) 2-May-06

Hors ligne

#53 Le 22/04/2011, à 14:39

sachacr

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

C'est définitivement un problème de version. J'ai essayé sur une Debian et ça fonctionne du premier coup avec le raccourcis ctrl + a + |
Même avec Putty.

Donc je suis dégouté de devoir utilisé CentOS... j'ai toujours préféré Debian toutes façons (sans vouloir troller c'est une question de gouts personnel) smile

Hors ligne

#54 Le 06/01/2012, à 03:52

odessos

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Salut à tous,

vous allez pas me croire mais j'arrive pas à trouver mon .screenrc smile
Il est ni dans /~ ni dans /etc...quelqu'un aurait une idée?


« Le monde ne sera pas détruit par ceux qui font le mal, mais par ceux qui les regardent sans rien faire » Albert Einstein

Hors ligne

#55 Le 06/01/2012, à 08:29

n3o51

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Bonjour , tu peut créer ce fichier dans ton home.


Welcome to the real world
________________________________

Hors ligne

#56 Le 06/01/2012, à 10:13

Vlam

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

@odessos : oui il n'y pas forcément de screenrc par défaut, car ce n'est pas utile à tous le monde.

Une bonne habitude à prendre est d'utiliser

screen -mc ton_screenrc

Car cela permet d'avoir plusieurs configurations (utile si tu travaille sur plusieurs machine ou si tu veux imbriquer des layouts). Tu n'en auras pas forcément besoin au début, mais cet outil est tellement génial que tu risques de l'utiliser longtemps smile

Edit : pour débuter si tu veux le screenrc par défaut (/etc/screenrc, chez moi sous 11.10) :

# $Id: screenrc,v 1.15 2003/10/08 11:39:03 zal Exp $
#
# /etc/screenrc
#
#   This is the system wide screenrc.
#
#   You can use this file to change the default behavior of screen system wide
#   or copy it to ~/.screenrc and use it as a starting point for your own
#   settings.
#
#   Commands in this file are used to set options, bind screen functions to
#   keys, redefine terminal capabilities, and to automatically establish one or
#   more windows at the beginning of your screen session.
#
#   This is not a comprehensive list of options, look at the screen manual for
#   details on everything that you can put in this file.
#

# ------------------------------------------------------------------------------
# SCREEN SETTINGS
# ------------------------------------------------------------------------------

#startup_message off
#nethack on

#defflow on # will force screen to process ^S/^Q
deflogin on
#autodetach off

# turn visual bell on
vbell on
vbell_msg "   Wuff  ----  Wuff!!  "

# define a bigger scrollback, default is 100 lines
defscrollback 1024

# ------------------------------------------------------------------------------
# SCREEN KEYBINDINGS
# ------------------------------------------------------------------------------

# Remove some stupid / dangerous key bindings
bind ^k
#bind L
bind ^\
# Make them better
bind \\ quit
bind K kill
bind I login on
bind O login off
bind } history

# An example of a "screen scraper" which will launch urlview on the current
# screen window
#
#bind ^B eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview"

# ------------------------------------------------------------------------------
# TERMINAL SETTINGS
# ------------------------------------------------------------------------------

# The vt100 description does not mention "dl". *sigh*
termcapinfo vt100 dl=5\E[M

# turn sending of screen messages to hardstatus off
hardstatus off
# Set the hardstatus prop on gui terms to set the titlebar/icon title
termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
# use this for the hard status string
hardstatus string "%h%? users: %u%?"

# An alternative hardstatus to display a bar at the bottom listing the
# windownames and highlighting the current windowname in blue. (This is only
# enabled if there is no hardstatus setting for your terminal)
#
#hardstatus lastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"

# set these terminals up to be 'optimal' instead of vt100
termcapinfo xterm*|linux*|rxvt*|Eterm* OP

# Change the xterm initialization string from is2=\E[!p\E[?3;4l\E[4l\E>
# (This fixes the "Aborted because of window size change" konsole symptoms found
#  in bug #134198)
termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'

# To get screen to add lines to xterm's scrollback buffer, uncomment the
# following termcapinfo line which tells xterm to use the normal screen buffer
# (which has scrollback), not the alternate screen buffer.
#
#termcapinfo xterm|xterms|xs|rxvt ti@:te@

# Enable non-blocking mode to better cope with flaky ssh connections.
defnonblock 5

# ------------------------------------------------------------------------------
# STARTUP SCREENS
# ------------------------------------------------------------------------------

# Example of automatically running some programs in windows on screen startup.
#
#   The following will open top in the first window, an ssh session to monkey
#   in the next window, and then open mutt and tail in windows 8 and 9
#   respectively.
#
# screen top
# screen -t monkey ssh monkey
# screen -t mail 8 mutt
# screen -t daemon 9 tail -f /var/log/daemon.log

Dernière modification par Vlam (Le 06/01/2012, à 10:16)


« Doutez de tout et surtout de ce que je vais vous dire. »

Hors ligne

#57 Le 06/01/2012, à 12:13

Qid

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

odessos a écrit :

Salut à tous,

vous allez pas me croire mais j'arrive pas à trouver mon .screenrc smile
Il est ni dans /~ ni dans /etc...quelqu'un aurait une idée?

le maitre est comme toujours dans etc wink


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#58 Le 22/03/2012, à 10:35

olivierpons

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Pour un résumé de screen, j'avais écrit un petit mémo qui pourrait éventuellement aider les personnes qui ne connaissent pas :

http://wheeg.fr/2009/04/13/linux-utilis … mo-simple/


Il ne faut pas oublier que la politesse et le respect sont mutuels.
Mon framework Web haute performance 100 % Linux / LAMP :
- v3 = Devis de Professionnels à Particuliers (et vice-versa)
- v2 = Groupe Synergies

Hors ligne

#59 Le 29/04/2012, à 14:43

aegar

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Bonjour,

Je viens de recommencer à utiliser screen après quelque années, et je me suis fais un screenrc qui colle à mes besoins, mais il reste un détail que je n'arrive pas à régler: la couleur du séparateur vertical.
Est-ce que c'est possible de la changer selon vous?

Un aperçu de ce que j'ai:
1335702454.png

Et mon screenrc:

# skip the startup message
startup_message off

# Change default scrollback value for new windows
defscrollback 1000

# start with visual bell as default
vbell on

# program like vim will clean the screen when finished
altscreen on

# use more color if available
term screen-256color

# set a nice status bar on the bottom of the screen
hardstatus off
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %d-%m-%y %{W} %c %{g}]'

termcapinfo rxvt* 'hs:ts=\E]2;:fs=\007:ds=\E]2;\007'
caption string "%{= kw}[%n %t]"
caption always

# set the default layout
split -v
screen -t
focus down
split
screen -t
focus down
screen -t
focus down

Merci d'avance

Aegar

Hors ligne

#60 Le 29/04/2012, à 21:49

fabux

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Salut,

pas dit que ce soit dû à screen. Tu as tenté de changer de thème ?

Hors ligne

#61 Le 30/04/2012, à 09:02

aegar

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Salut,

Si je change le thème, la couleur du séparateur suit celle du texte.
Le problème c'est que si j'adapte la couleur du texte pour avoir mon séparateur dans le gris qui m'intéresse, ça va devenir illisible ><

Du coup je me demandais si screen proposait de formater ce séparateur, un peu comme pour le hardstatus.

Sur mon autre pc, sous archlinux, le séparateur vertical n’apparaît pas du tout, faudrait que je trouve où screen lit le caractère à utiliser

Hors ligne

#62 Le 06/08/2013, à 12:52

ndubien

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Coucou,

Je voulais ajouter un petit truc sur mon bashrc + screenrc pour renommer automatiquement mes onglets en fonctions de la dernière commande exécutée.
En tapant : cat /etc/... l'onglet serait renommé cat...

Alors je sais qu'il est possible d'exécuter des pré-commandes à l'aide de :
trap '$BASH_COMMAND' DEBUG
de changer le nom de l'onglet courant avec :
screen -X title nouveau_nom
et de récupérer la première partie de la commande avec :
cut -d " " -f1

Mais impossible de fusionner toutes ces informations pour que ca fonctionne comme souhaité.
Quelqu'un sait-il comment faire? Je pense que ca pourrait être un bon truc pour screen.

Merci d'avance
++

Hors ligne

#63 Le 06/08/2013, à 17:28

ndubien

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Re,

Tout d'abord, j'ai solutionné mon problème, il suffisait d'ajouter:

trap 'custom=($BASH_COMMAND); screen -X title $custom' DEBUG

dans le bashrc.
Cette commande ne fonctionne pas correctement sur les anciennes versions de bash et screen. En effet, sur les flux continus du style :
tail -f other_vhosts_access.log | grep xxx.xxx.xxx.xxx
J'ai pu remarquer que le flux n'était pas actualisé car la commande bloquait à l'entrée de grep après avoir nommé le screen 'grep'.
Cela fonctionne sur ma Debian Squeeze avec Screen version 4.00.03jw4 (FAU) 2-May-06 et GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu).


Juste au passage voici le bashrc que j'utilise pour démarrer mes sessions automatiquement avec le même screen :

if [[ -z $STY ]]
then
        screen -x main select 1 || screen -R -S main;
else
        trap 'custom=($BASH_COMMAND); screen -X title $custom' DEBUG;
fi

Et voici mon .screenrc :

terminfo * k1=\EOP
terminfo * k2=\EOQ
terminfo * k3=\EOR
terminfo * k4=\EOS
terminfo * k5=\E[15~
terminfo * k6=\E[17~
terminfo * k7=\E[18~
terminfo * k8=\E[19~
terminfo * k9=\E[20~
terminfo * k;=\E[21~
terminfo * F1=\E[23~
terminfo * F2=\E[24~

# New window
bindkey -k k2 screen bash
# Next and previous windows
bindkey -k k3 prev
bindkey -k k4 next

# Detach the screen
bindkey -k k6 detach

# Create a vertical split
bindkey -k F1 split -v
# Create a horizontal split
bindkey -k F2 split
# Move to next split (CTRL + TAB)
bindkey "^[[27;5;9~" focus down
# Move to previous split (CTRL + SPACE)
bindkey "^@" focus up
# Kill curent split
bindkey -k k; remove

# Reload .screenrc
bindkey -k k5 source $HOME/.screenrc
bindkey -k k1 redisplay

bindkey ^l lockscreen

# Second toolbar
#caption always "%{kB}%?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{kB}%?%+Lw%?"

# Window list at the bottom.

backtick 0 10 10 awk '{ printf "%sC", $2 }' /proc/acpi/thermal_zone/THRM/temperature
backtick 1 60 60 awk '{if ($1=="MemTotal:") mt = $2; if ($1=="MemFree:") mm = $2; if ($1=="Buffers:") mb = $2; if ($1=="Cached:") mc = $2} END {printf ("%2.1f"), ((mt-(mm+mb+mc)) * 100 / mt);print "%M"}' /proc/meminfo
backtick 2 60 50 awk '{if ($1=="SwapFree:") fs = $2; if ($1=="SwapTotal:") ts = $2} END {printf ("%2.1f"),((ts-fs) * 100 / ts );print "%S"}' /proc/meminfo
caption always '%{gw} %=%{wk} %?%-Lw%?%{=b kR}(%{W}%n*%f %t%?(%u)%?%{=b kR})%{= kw}%?%+Lw%?%?%{b C}'
hardstatus alwayslastline '%{g}[ %{W}%H %{g}][ %{W}%0` %1` %2` %{g}]%=[ %{Y}%l%{g} ]%{=b C}[ %d/%m/%Y %c:%s%{b C} ]'

# Don't block command output if the terminal stops responding
# (like if the ssh connection times out for example).
nonblock on

# Allow editors etc. to restore display on exit
# rather than leaving existing text in place
altscreen on

# Used in order to support scrolling
termcapinfo xterm|xterms|xs|rxvt ti@:te@

# Increase the default size of the scrollback buffer
defscrollback 1024

multiuser on
startup_message off

++

Dernière modification par ndubien (Le 07/08/2013, à 22:13)

Hors ligne

#64 Le 14/03/2019, à 11:58

CrazyCat

Re : [config] Partagez vos '.screenrc' (screen = multiplexeur de terminaux)

Bonjour,

Je sais que je réouvre un vieux sujet, mais j'y inclus une astuce utile smile
J'ai configuré screen pour qu'il donne l'écran suivant:Capture

Mais j'avais un souci, c'est que lorsque je détachais screen (ou qu'il se détachait seul lors d'une déconnexion du SSH) et que je le réattachais, je perdais ma configuration de fenêtre et les consoles étaient séparées.
En fouillant un peu, j'ai vu que depuis la version 4, il y avait une possibilité de sauver le layout par défaut (commande: layout save default) qui était ainsi toujours rappelé.
Voici donc la partie intéressante de mon .screenrc

split -v
screen -t weechat 0 weechat
resize -h +20%
focus right
split
screen -t htop 2 htop
resize -v +15%
focus down
screen -t network 1 bmon -p eth0
focus left
layout save default

J'espère que ça en aidera parmi vous.

Hors ligne