Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:autres:screen [03/10/2010 10:42] smolski |
doc:autres:screen [03/07/2014 00:06] 127.0.0.1 modification externe |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== SCREEN ====== | ====== SCREEN ====== | ||
- | |||
- | ===== Rédaction en cours... 29/08/2010 ===== | ||
- | |||
* Objet : Commande Linux Screen | * Objet : Commande Linux Screen | ||
* Niveau requis : DÉBUTANT AVISÉ | * Niveau requis : DÉBUTANT AVISÉ | ||
- | * Commentaires : //LA commande idéale couplée avec //[[commande:ssh|SSH]]. | + | * Commentaires : //LA commande idéale couplée avec //[[:doc:reseau:ssh|SSH]]. |
- | * Débutant, à savoir : [[manuel:ldc | La ligne de Commande]] | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) |
===== Introduction ===== | ===== Introduction ===== | ||
Ligne 15: | Ligne 12: | ||
Cela permet de s'attacher et de se détacher d'une commande en la laissant active dans la //sessionscreen// créée. | Cela permet de s'attacher et de se détacher d'une commande en la laissant active dans la //sessionscreen// créée. | ||
- | Via [[commande:ssh | SSH]], **screen** peut ouvrir une //session screen// sur un pc distant et de laisser active une commande en exécution tout en se déconnectant totalement du pc distant. \\ | + | Via [[:doc:reseau:ssh | SSH]], **screen** peut ouvrir une //session screen// sur un pc distant et de laisser active une commande en exécution tout en se déconnectant totalement du pc distant. \\ |
Puis, ultérieurement, de revenir sur cette commande dans la même //session screen//. \\ | Puis, ultérieurement, de revenir sur cette commande dans la même //session screen//. \\ | ||
Ligne 27: | Ligne 24: | ||
Par exemple, avec apt-get : | Par exemple, avec apt-get : | ||
<code bash> | <code bash> | ||
- | # apt-get install screen</code> | + | aptitude install screen</code> |
Ligne 36: | Ligne 33: | ||
==== Screen - Ouvrir ==== | ==== Screen - Ouvrir ==== | ||
- | Pour lancer **screen** dans une [[manuel:console | Console]] (ou un [[manuel:terminal | Terminal]]), il suffit de rédiger la commande : | + | Pour lancer **screen** dans une [[:doc:systeme:console | Console]] (ou un [[:doc:systeme:terminal | Terminal]]), il suffit de rédiger la commande : |
$ screen | $ screen | ||
Au lancement de **screen**, un message s’affiche à l’écran indiquant la version utilisée ainsi que ce programme est sous licence GPL. | Au lancement de **screen**, un message s’affiche à l’écran indiquant la version utilisée ainsi que ce programme est sous licence GPL. | ||
- | // | ||
- | {{ http://images.debian-facile.org/file-Ra38c6907fa06d0e4da3bf4c5913dc7f0.png }} | ||
- | // | + | //images.debian-facile.org/file-Ra38c6907fa06d0e4da3bf4c5913dc7f0// |
+ | |||
+ | **Image disparue !** smolski 18/03/2012 | ||
Il ne reste plus qu’à appuyer sur la touche : | Il ne reste plus qu’à appuyer sur la touche : | ||
Ligne 69: | Ligne 66: | ||
===== Screen - Options ===== | ===== Screen - Options ===== | ||
- | ==== Option : Ctrl+a w - fenêtre screen ==== | + | |
+ | |||
+ | ==== Option : Ctrl+a - gestion des fenêtres ==== | ||
+ | |||
+ | == Ctrl+a c == | ||
+ | |||
+ | Pour créer une nouvelle fenêtre, il suffit de taper la combinaison de touches : | ||
+ | Ctrl+a c | ||
+ | |||
+ | Il est à noter qu'en plus de créer une nouvelle fenêtre, **screen** nous emmène directement dans celle-ci. \\ | ||
+ | |||
+ | == Ctrl+a w == | ||
**Screen** étant un gestionnaire de fenêtres, il permet donc d’ouvrir et de fermer des fenêtres. Il va même jusqu'à indiquer dans quelle fenêtre nous nous trouvons. | **Screen** étant un gestionnaire de fenêtres, il permet donc d’ouvrir et de fermer des fenêtres. Il va même jusqu'à indiquer dans quelle fenêtre nous nous trouvons. | ||
Ligne 79: | Ligne 87: | ||
Une petite ligne s’affiche //temporairement// en bas de l'écran où l'on peut lire par exemple ceci : | Une petite ligne s’affiche //temporairement// en bas de l'écran où l'on peut lire par exemple ceci : | ||
- | 0*$ bash | + | 0-$ bash 1*$ bash (l'étoile * à côté du 1 indique que nous sommes bien dans la deuxième fenêtre) |
**Signification** | **Signification** | ||
Ligne 86: | Ligne 94: | ||
Chaque fenêtre de screen a : | Chaque fenêtre de screen a : | ||
- | - un numéro et la première commence à 0. | + | - un numéro de session screen, la première commence à ''0'', |
- | - Ensuite, il y a un astérisque | + | - un astérisque ( ''*'' ) qui indique dans quelle session screen nous nous situons actuellement, |
- | - suivi d’un signe de dollar | + | - un signe de dollar ( ''$'' ) |
- | - puis du nom du shell. | + | - le nom du shell utilisé. |
- | ==== Option : Ctrl+a - gestion des fenêtres ==== | + | Pour se promener entre les différentes fenêtres, il existe quatre solutions : |
- | Pour créer une nouvelle fenêtre, il suffit de taper la combinaison de touches : | + | == Ctrl+a n == |
- | Ctrl+a c | + | |
- | Il est à noter qu'en plus de créer une nouvelle fenêtre, **screen** nous emmène directement dans celle-ci. \\ | + | Pour aller à la fenêtre suivante : |
+ | Ctrl+a n | ||
- | Pour le vérifier : | + | == Ctrl+a p == |
+ | |||
+ | pour aller à la fenêtre précédente : | ||
+ | Ctrl+a p | ||
+ | |||
+ | == Ctrl+a [0 (zéro, le chiffre) - 9] == | ||
+ | |||
+ | pour naviguer entre les dix fenêtres de screen : | ||
+ | Ctrl+a 0 | ||
+ | Ctrl+a 1 | ||
+ | ... | ||
+ | Ctrl+a 9 | ||
+ | |||
+ | Au choix. :-) | ||
+ | |||
+ | == Ctrl+a ' (apostrophe) == | ||
+ | |||
+ | Pour aller dans une des fenêtres par le numéro : | ||
+ | Ctrl+a ' | ||
+ | |||
+ | Puis, tapez dans le prompt le numéro de la fenêtre que vous désirez atteindre. | ||
+ | |||
+ | == Ctrl+a " (guillemets doubles) == | ||
+ | |||
+ | Pour aller dans une des fenêtres visuellement : | ||
+ | Ctrl+a " | ||
+ | |||
+ | Propose la liste des différentes fenêtres et nous pouvons y choisir au clavier, par les flèches de direction, une session où nous situer en la validant. | ||
+ | |||
+ | === Pour un clavier qwerty === | ||
+ | |||
+ | == Ctrl+a puis shift (flèche pour les majuscules) ' (apostrophe) == | ||
+ | |||
+ | Pour avoir la liste des différentes fenêtres : | ||
+ | Ctrl+a shift ' | ||
+ | |||
+ | Propose la liste des différentes fenêtres, à l'identique de l'option : | ||
Ctrl+a w | Ctrl+a w | ||
- | On lira alors : | + | ==== Option : -S nommer la session screen ==== |
- | 0-$ bash 1*$ bash (l'étoile * à côté du 1 indique que nous sommes bien dans la deuxième fenêtre) | + | |
- | Pour se promener entre les différentes fenêtres, il existe quatre solutions : | + | L'option -S à l'ouverture de screen permet de donner un nom explicite à la session que nous ouvrons. |
- | Ctrl+a n (n pour next) pour aller à la fenêtre suivante. | + | Ainsi, par exemple, nous pouvons ouvrir une session screen nommée user ainsi : |
- | Ctrl+a p (p pour previous) pour aller à la fenêtre précédente. | + | screen -S user |
- | Ctrl+a 0 ... Ctrl+a 9 pour naviguer entre les dix fenêtres de sreen. | + | |
- | Ctrl+a ' et tapez dans le prompt la fenêtre que vous désirez atteindre. | + | |
- | Ctrl+a " qui propose la liste des différentes fenêtres. | + | |
- | === Remarque : === | + | Ceci crée une session screen nommée //user//. |
- | Pour les deux dernières options, il faut déterminer si c'est bon pour les claviers azerty. Pour ma part, clavier qwerty, je dois taper : | + | Nous pouvons par exemple y lancer une tâche un peu longuette, nous deconnecter pendant cette tâche sans l'arrêter. |
- | Ctrl+a puis shift (flèche pour les majuscules) ' | + | |
- | et | + | |
- | Crtl+a puis shift " | + | Ctrl+a d |
- | //À toi de me le dire smolski//. | + | |
+ | Pour y revenir, il suffira de taper : | ||
+ | screen -r user | ||
- | À suivre .... | + | Et vérifier la bonne continuité ou faire cesser la commande qui y aura été lancée précédemment en arrêtant screen par : |
+ | C+d | ||
- | ===== Lien ===== | + | ou : |
+ | exit | ||
+ | |||
+ | ==== Option : -r ==== | ||
+ | |||
+ | Pour revenir à une session que vous avez ouverte et laissé active : | ||
+ | screen -r | ||
+ | |||
+ | Et vous y serez de retour directement. | ||
+ | |||
+ | Si vous avez plusieurs sessions en cours, vous pourrez ensuite en consulter la liste avec : | ||
+ | Ctrl+a" | ||
+ | |||
+ | Comme indiqué dans les options -a | ||
+ | |||
+ | ===== Ajouter une bare de status ( hardstatus ) ===== | ||
+ | Une barre de status qui affiche les fenêtres totalement personnalisable; | ||
+ | Ajouter ceci à vote fichier de configuration screen perso : **.screenrc** : | ||
+ | <code bash> | ||
+ | hardstatus alwayslastline | ||
+ | hardstatus string '%{= kG}%{C}Screen: %{c}%{= kG}[%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{C} %d-%m %{W}%c %{g}]' | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== Liens et remerciements ===== | ||
* http://doc.ubuntu-fr.org/screen | * http://doc.ubuntu-fr.org/screen | ||
* http://www.daviddallet.com/weblog/posts/2008/10/27/screen-ssh-et-autres-joies/ | * http://www.daviddallet.com/weblog/posts/2008/10/27/screen-ssh-et-autres-joies/ | ||
+ | * http://ftp.traduc.org/doc-vf/gazette-linux/html/2008/147/lg147-A.html#commandes | ||
+ | |||
+ | //Merci à //**martin**// de nous avoir initié ce si bô tutô !// Yep ! ;-) | ||
+ | |||
+ | |||
+ | |||