{"id":377,"date":"2023-09-02T12:24:12","date_gmt":"2023-09-02T10:24:12","guid":{"rendered":"https:\/\/linux-bibel.at\/?p=377"},"modified":"2023-09-02T12:24:14","modified_gmt":"2023-09-02T10:24:14","slug":"thema-screen","status":"publish","type":"post","link":"https:\/\/linux-bibel.at\/index.php\/2023\/09\/02\/thema-screen\/","title":{"rendered":"Thema screen"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>screen<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">kennen die Meisten.<br>Es wird meist benutzt um Prozesse nach Ausstieg am laufen zu halten, oder um per share einen Fremdarbeiter von einem Gast-Account auf einen Root-Account zu lotsen und ihm beim seinen Arbeiten auf die Finger sehen zu k\u00f6nnen und im schlimmsten Fall eingreifen zu k\u00f6nnen.<br>Um den Ueberblick behalten zu k\u00f6nnen ist es von Vorteil Screen-Sitzungen zu erkennen.<br>Zu diesen Zweck ist es ratsam sich im Home-Folder eine .screenrc mit folgenen Inhalt an zu legen.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>caption always \"%{yg}     | %{rW} %H * $LOGNAME %{yg}|%{bw}%c %D %{yg}|%{rw}%{-}%-Lw%{rw}%50&gt;%{rW}%n%f* %t %{-}%+Lw%&lt; %{yg}|%{bw} %S %{yg}\"\ntermcapinfo xterm|xterms|xs|rxvt ti@:te@<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dies laest sich per<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo -e 'caption always \"%{yg}     | %{rW} %H * $LOGNAME %{yg}|%{bw}%c %D %{yg}|%{rw}%{-}%-Lw%{rw}%50&gt;%{rW}%n%f* %t %{-}%+Lw%&lt; %{yg}|%{bw} %S %{yg}\"'\\\\n'termcapinfo xterm|xterms|xs|rxvt ti@:te@'<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">bewerkstelligen.<br>Nun haben wir eine kleine Anzeigeleiste bei Aufruf von screen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"91\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc-1024x91.jpeg\" alt=\"\" class=\"wp-image-378\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc-1024x91.jpeg 1024w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc-300x27.jpeg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc-768x68.jpeg 768w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc.jpeg 1072w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Um zuegiges Arbeiten mit mehreren Screen-Sizungen zu erm\u00f6glichen habe ich mir folgene Funktion in die ~\/.bashrc implementiert.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function sc()\n        {\n        unset anum\n        if &#91; \"${1:0:2}\" == \"-h\" ]||&#91; \"${1:0:2}\" == \"-?\" ]\n                then\n                echo -e \"\\033&#91;0;32mReinis ${FUNCNAME&#91;0]} V1.0\\033&#91;0m\"\n                echo \"Reinis .bashrc Tools\"\n                echo \"\"\n                echo -e \"\\033&#91;1;30;47m${FUNCNAME&#91;0]}\\033&#91;0m\"\n                echo \"Oeffnet Screen-Sitzungen\"\n                echo \"\"\n                echo -e \"\\033&#91;1;30;47m${FUNCNAME&#91;0]} -l\\033&#91;0m\"\n                echo \"Listed die vorhandenen Screen-Sitzungen\"\n                echo \"\"\n                echo -e \"\\033&#91;1;30;47m${FUNCNAME&#91;0]} -r\\033&#91;0m\"\n                echo \"Reconnectet vorhandene Screen-Sitzungen\"\n                echo \"\"\n                echo -e \"\\033&#91;1;30;47m${FUNCNAME&#91;0]} -d\\033&#91;0m\"\n                echo \"Loescht die vorhandenen Screen-Sitzungen\"\n                return\n        fi\n        if &#91; \"$1\" == \"-l\" ]\n                then\n                screen -ls|grep 'Detached'|cut -f2 -d'-'|awk {'print $1'}|sort -n 2>\/dev\/null\n                return\n        fi\n        if &#91; \"${1:0:2}\" == \"-d\" ]\n                then\n                if &#91; \"${#1}\" -le \"2\" ]\n                        then\n                        delnr=0\n                        while &#91; \"$delnr\" != \"q\" ]\n                                do\n                                screen -ls|grep 'Detached'|cut -f2 -d'-'|awk {'print $1'}|sort -n 2>\/dev\/null\n                                read -p \"Nr des zu loeschenden Screens oder \\\"q\\\" fuer quit:\" delnr\n                                if &#91; \"$delnr\" == \"q\" ]\n                                        then\n                                        return\n                                fi\n                                delstr=$(screen -ls|awk {'print $1'}|grep \"\\-$delnr\")\n                                screen -S \"$delstr\" -X quit 2>&amp;1>\/dev\/null\n                                if &#91; \"$delnr\" != \"\" ]\n                                        then\n                                        echo \"Screen $delnr beendet\"\n                                else\n                                        echo \"Kein Screen zum beenden vorhanden.\"\n                                fi\n                        done\n                fi\n                return\n        fi\n        if &#91; \"${1:0:2}\" == \"-r\" ]\n                then\n                if &#91; \"${#1}\" -le \"2\" ]\n                        then\n                        delnr=0\n                        while &#91; \"$delnr\" != \"q\" ]\n                                do\n                                screen -ls|grep 'Detached'|cut -f2 -d'-'|awk {'print $1'}|sort -n 2>\/dev\/null\n                                read -p \"Nr des zu reconnet Screens oder \\\"q\\\" fuer quit:\" delnr\n                                if &#91; \"$delnr\" == \"q\" ]\n                                        then\n                                        return\n                                fi\n                                delstr=$(screen -ls|awk {'print $1'}|grep \"\\-$delnr\")\n                                screen -r \"$delstr\"\n                        done\n                fi\n                return\n        fi\n        unset snum\n        for a in $(screen -ls|grep 'Detached'|cut -f2 -d'-'|awk {'print $1'}|sort -n)\n                do\n                snum=\"$snum $a-,\"\n        done\n        if &#91; \"$snum\" == \"\" ]\n                then\n                screen -S Screen-1\n                return\n        fi\n        while :\n                do\n                ((anum=anum+1))\n                echo \"$snum\"|grep -v \" $anum-\" 1>&amp;2>\/dev\/null&amp;&amp;screen -S Screen-$anum&amp;&amp;return\n        done\n        screen -S Screen-1\n        }<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nach neu Laden der ~\/.bashrc per<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>. ~\/.bashrc<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">oder auch mit<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>source ~\/.bashrc<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">kann man sodann mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sc -?<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">kontrollieren ob alles geklappt hat. Die Ausgabe sollte folgenderma\u00dfen aussehen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"329\" height=\"243\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc2.jpeg\" alt=\"\" class=\"wp-image-379\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc2.jpeg 329w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc2-300x222.jpeg 300w\" sizes=\"auto, (max-width: 329px) 100vw, 329px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Da ich T\u00e4tigkeiten auf vielen verschiedenen Servern zu erledigen habe rufe ich nun Morgens Screen mehrmals auf.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sc<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">und disconnecte die offene Screen-Sitzung mit der Tastenkombination<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>STRG+a+d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">.<br>Diesen Vorgang wiederhole ich mehrmals um mehrere Screen-Sizungen offen zu haben und rufe bei ausreichender Anzahl von Screen-Sitzungen<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sc -r<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">auf.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"387\" height=\"117\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc3.jpeg\" alt=\"\" class=\"wp-image-380\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc3.jpeg 387w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/sc3-300x91.jpeg 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Jedesmal wenn ich nun eine Screen-Sizung verlasse fragt er mich nun nach der Nummer f\u00fcr die naechste Sitzung bis ich Abends<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CODE:&nbsp;<a href=\"https:\/\/www.linux-bibel-oesterreich.at\/viewtopic.php?t=513#\">ALLES AUSW\u00c4HLEN<\/a><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>q<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">fuer quit druecke.<br>Ich hoffe diese Anleitung erleichtert jemand das t\u00e4gliche Leben und das arbeiten in der Shell\u00a0<img loading=\"lazy\" decoding=\"async\" width=\"15\" height=\"17\" src=\"https:\/\/www.linux-bibel-oesterreich.at\/images\/smilies\/icon_e_wink.gif\" alt=\";)\"><br>Getestet in Debian basierenden Distributionen.<\/p>\n\n\n\n<p class=\"has-light-green-cyan-color has-text-color wp-block-paragraph\">Verfasst von \u00aeeini123<\/p>\n<div class=\"pld-like-dislike-wrap pld-custom\">\r\n    <div class=\"pld-like-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-like-trigger pld-like-dislike-trigger  \" title=\"Gef\u00e4llt mir\" data-post-id=\"377\" data-trigger-type=\"like\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                            <img src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/12\/Daumen-Hoch.png\" alt=\"Gef\u00e4llt mir\" \/>\r\n            <\/a>\r\n    <span class=\"pld-like-count-wrap pld-count-wrap\">28    <\/span>\r\n<\/div><div class=\"pld-dislike-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-dislike-trigger pld-like-dislike-trigger  \" title=\"Gef\u00e4llt mir nicht\" data-post-id=\"377\" data-trigger-type=\"dislike\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                            <img src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/12\/Daumen-Runter.png\" alt=\"Gef\u00e4llt mir nicht\" \/>\r\n            <\/a>\r\n    <span class=\"pld-dislike-count-wrap pld-count-wrap\">18<\/span>\r\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>kennen die Meisten.Es wird meist benutzt um Prozesse nach Ausstieg am laufen zu halten, oder um per share einen Fremdarbeiter von einem Gast-Account auf einen Root-Account zu lotsen und ihm beim seinen Arbeiten auf die Finger sehen zu k\u00f6nnen und im schlimmsten Fall eingreifen zu k\u00f6nnen.Um den Ueberblick behalten zu k\u00f6nnen ist es von Vorteil [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":378,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[12,7,6],"class_list":["post-377","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-terminal","tag-kommandozeile","tag-shell","tag-terminal"],"_links":{"self":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/comments?post=377"}],"version-history":[{"count":1,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/377\/revisions"}],"predecessor-version":[{"id":381,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/377\/revisions\/381"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media\/378"}],"wp:attachment":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media?parent=377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/categories?post=377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/tags?post=377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}