1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg <new group name> newgrp `id -gn`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
sg
est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le exec
signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous “déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande at
dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
screen -S <session_name> -X at \# stuff "exec sg <new_group_name> newgrp ### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg newgrp id -gn
“`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
id
est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le stuff
signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous "déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande &007 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
id -gn### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg <new group name> newgrp `id -gn`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous “déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
^M"
“`
Notez la nécessité d'échapper aux backticks pour obtenir que la commande &007 soit exécutée dans la session d'écran, et que le ^M pour obtenir que l'écran appuie sur "enter” à la fin de votre commande. Par conséquent, quelque chose d'étrange peut se produire si l'une des fenêtres de l'écran comporte une commande à moitié écrite à l'invite de commande ou si elle exécute une application autre qu'un shell (par exemple emacs, top). Si cela pose un problème, j'ai quelques idées :
- Pour vous débarrasser de toute commande à moitié écrite, vous pouvez ajouter “^C” au début de la commande.
- Pour éviter d'exécuter la commande dans une fenêtre emacs, etc, vous pourriez demander à “at” de filtrer sur le titre de la fenêtre, etc (dans l'exemple ci-dessus, j'utilise “#”, qui correspond à toutes les fenêtres, mais vous pouvez filtrer par titre de fenêtre, utilisateur, etc).
Pour exécuter la commande dans une fenêtre spécifique (identifiée par le numéro de la fenêtre), utilisez ce qui suit :
screen -S <session_name> -p 0 -X stuff "exec sg <new_group_name> newgrp ### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg newgrp id -gn
“`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous "déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
screen -S <session_name> -X at \# stuff "exec sg <new_group_name> newgrp ### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg newgrp id -gn
“`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous "déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
id -gn### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg <new group name> newgrp `id -gn`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous “déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
^M"
“`
Notez la nécessité d'échapper aux backticks pour obtenir que la commande &007 soit exécutée dans la session d'écran, et que le ^M pour obtenir que l'écran appuie sur "enter” à la fin de votre commande. Par conséquent, quelque chose d'étrange peut se produire si l'une des fenêtres de l'écran comporte une commande à moitié écrite à l'invite de commande ou si elle exécute une application autre qu'un shell (par exemple emacs, top). Si cela pose un problème, j'ai quelques idées :
- Pour vous débarrasser de toute commande à moitié écrite, vous pouvez ajouter “^C” au début de la commande.
- Pour éviter d'exécuter la commande dans une fenêtre emacs, etc, vous pourriez demander à “at” de filtrer sur le titre de la fenêtre, etc (dans l'exemple ci-dessus, j'utilise “#”, qui correspond à toutes les fenêtres, mais vous pouvez filtrer par titre de fenêtre, utilisateur, etc).
Pour exécuter la commande dans une fenêtre spécifique (identifiée par le numéro de la fenêtre), utilisez ce qui suit :
id -gn### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg <new group name> newgrp `id -gn`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous “déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
screen -S <session_name> -X at \# stuff "exec sg <new_group_name> newgrp ### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg newgrp id -gn
“`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous "déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
id -gn### 1. Obtenir un shell avec le nouveau groupe sans se déconnecter et se reconnecter
Si vous n'ajoutez qu'un seul groupe, j'ai utilisé ce qui suit :
exec sg <new group name> newgrp `id -gn`
C'est une variation de l'astuce newgrp à deux couches de Legooolas, mais elle est sur une ligne et ne nécessite pas que vous entriez manuellement votre groupe principal.
&007 est newgrp mais accepte une commande à exécuter avec le nouvel ID de groupe. Le &007 signifie que le nouveau shell remplace le shell existant, donc vous n'avez pas besoin de vous “déconnecter” deux fois.
Contrairement à l'utilisation de su, vous n'avez pas besoin de taper votre mot de passe. Il ne rafraîchit pas non plus votre environnement (à part l'ajout du groupe), vous conservez donc votre répertoire de travail actuel, etc.
2. Exécution de la commande dans toutes les fenêtres d'écran d'une session
La commande [ &007 ]&003 dans Screen exécute une commande dans toutes les fenêtres que vous spécifiez (notez qu'il s'agit d'une commande Screen, et non d'une commande shell). Vous pouvez utiliser la commande suivante pour envoyer la commande à toutes les sessions d'écran existantes :
^M"
“`
Notez la nécessité d'échapper aux backticks pour obtenir que la commande &007 soit exécutée dans la session d'écran, et que le ^M pour obtenir que l'écran appuie sur "enter” à la fin de votre commande. Par conséquent, quelque chose d'étrange peut se produire si l'une des fenêtres de l'écran comporte une commande à moitié écrite à l'invite de commande ou si elle exécute une application autre qu'un shell (par exemple emacs, top). Si cela pose un problème, j'ai quelques idées :
- Pour vous débarrasser de toute commande à moitié écrite, vous pouvez ajouter “^C” au début de la commande.
- Pour éviter d'exécuter la commande dans une fenêtre emacs, etc, vous pourriez demander à “at” de filtrer sur le titre de la fenêtre, etc (dans l'exemple ci-dessus, j'utilise “#”, qui correspond à toutes les fenêtres, mais vous pouvez filtrer par titre de fenêtre, utilisateur, etc).
Pour exécuter la commande dans une fenêtre spécifique (identifiée par le numéro de la fenêtre), utilisez ce qui suit :
^M"
“`