{"id":5480,"date":"2023-09-16T22:01:05","date_gmt":"2023-09-16T20:01:05","guid":{"rendered":"https:\/\/linux-bibel.at\/?p=5480"},"modified":"2023-10-05T22:36:19","modified_gmt":"2023-10-05T20:36:19","slug":"wohin-mit-langen-befehlen-ins-startmenue","status":"publish","type":"post","link":"https:\/\/linux-bibel.at\/index.php\/2023\/09\/16\/wohin-mit-langen-befehlen-ins-startmenue\/","title":{"rendered":"Wohin mit langen Befehlen? \u2013 Ins Startmen\u00fc"},"content":{"rendered":"<p>Lange Terminal-Befehle oder -Befehlsketten k\u00f6nnen sich wohl die wenigsten merken. Deshalb muss man sie sich notieren &#8211; oder man kann sie ins Startmen\u00fc legen, genauer: Man legt eine Script-Datei mit u.a. dem Terminalbefehl an und ruft dieses Script zum Ausf\u00fchren vom Startmen\u00fc aus auf \u2013 wie irgendein Programm, das bei der Installation einen Eintrag im Startmen\u00fc eingerichtet hat.<\/p>\n<h4>Der Terminal-Befehl<\/h4>\n<p>Als Beispiel nehme ich folgende Befehlskette aus dem Beitrag &#8222;Was ist das nur f\u00fcr ein Fenster? Informationen dazu ermitteln&#8220;.<\/p>\n<p><code>xprop | awk '\/PID\/ {print $3}' | xargs ps h -o pid,cmd<\/code><\/p>\n<p>Trage ich sie in ein Terminal ein und dr\u00fccke <em>Enter<\/em>, wird der Cursor zu einem Kreuz &#8211; damit klicke ich auf ein Fenster, das ich z.B. keinem Programm zuordnen kann, und ich bekomme im Terminal u.a. den Namen (caja) des Fensters geliefert, etwa:<br \/>\n<em>31909 \/usr\/bin\/caja &#8211;no-desktop \/home\/rocki<\/em><\/p>\n<h4>Eine Script-Datei erstellen<\/h4>\n<p>Mit der obigen Befehlskette kann ich auch ein Script erstellen, eine ausf\u00fchrbare Datei. Eine solche arbeitet bei der Ausf\u00fchrung miteinander verkn\u00fcpfte Befehle von Terminalprogrammen ab. Im konkreten Fall hier soll es bewirken, dass die Info nicht ins Terminal, sondern jeweils in eine Textdatei geschrieben wird, die danach automatisch ge\u00f6ffnet wird, sodass man die Info lesen kann. Damit das Script liefert, was man will. muss man die Befehlskette in eine Script-Datei schreiben und erg\u00e4nzen mit weiteren Befehlen. Das Script sieht in unserem Beispiel dann so aus:<\/p>\n<p><code>#!\/bin\/bash<br \/>\nxprop | awk '\/PID\/ {print $3}' | xargs ps h -o pid,cmd &gt; Feninfo1-Resultat.txt | mousepad \/home\/rocki\/bin-Progs\/Feninfo1-Resultat.txt<\/code><\/p>\n<p>Die Datei <em>Feninfo1-Resultat.txt<\/em> darf auch einen anderen Namen tragen (aber beide Male im Script den gleichen), und der Editor darf ein anderer sein, einfach einer, der auf dem System installiert ist.<\/p>\n<p>Man speichert nun die Script-Datei unter einem Dateinamen und mit der Endung <em>.sh<\/em> (hier <em>fen1.sh<\/em>, siehe MenuLibre-Bild unten) in einem Verzeichnis eigener Wahl ab, in unserem Fall hier in <em>bin-Progs. <\/em><\/p>\n<p>Nach dem Speichern muss die Script-Datei ausf\u00fchrbar gemacht werden &#8211; mit <em>chmod +x<\/em> oder wie folgt: Auf die Datei mit rechts klicken &#8211; ein Fenster \u00f6ffnet sich &#8211; Eigenschaften ausw\u00e4hlen &#8211; Zugriffsrechte w\u00e4hlen &#8211; <em>Datei darf als Programm gestartet werden<\/em> ankreuzen. Fenster schliessen.<\/p>\n<p>Beim Aufrufen dieses Scripts hier tr\u00e4gt die Befehlskette ein paar Infos zu einem Fenster, das ich anklicke, in die Datei <em>Feninfo1-Resultat.txt<\/em> ein, ruft dann den Editor <em>mousepad<\/em> auf, der die Datei <em>Feninfo1-Resultat.txt<\/em> \u00f6ffnet und ihren Inhalt anzeigt.<\/p>\n<p>Kleine Zusammenfassung: Man erzeugt eine Scriptdatei, die im Fall hier beim Ausf\u00fchren jeweils eine Textdatei erzeugt. Ein anderes Script k\u00f6nnte aber ebensogut etwas anderes bewirken.<\/p>\n<h4>Im Startmen\u00fc einen Eintrag anlegen<\/h4>\n<p>Nachdem die Script-Datei (fen1.sh) fertig, am richtigen Ort und ausf\u00fchrbar ist, kann man als Letztes den Eintrag im Startmen\u00fc vornehmen. Hier geschieht das mit MenuLibre und in der Desktop-Umgebung Xfce. Men\u00fcLibre gibt es aber nicht nur f\u00fcr Xfce.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5685\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/MenuLibre-Fensterinfo-2-300x266.png\" alt=\"\" width=\"518\" height=\"459\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/MenuLibre-Fensterinfo-2-300x266.png 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/MenuLibre-Fensterinfo-2-150x133.png 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/MenuLibre-Fensterinfo-2-768x682.png 768w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/MenuLibre-Fensterinfo-2.png 775w\" sizes=\"auto, (max-width: 518px) 100vw, 518px\" \/><\/p>\n<p>Man \u00f6ffnet MenuLibre, klickt in der linken Spalte auf Zubeh\u00f6r (1), dann auf das gr\u00fcne Kreuz (2, &#8222;Starter hinzuf\u00fcgen&#8220;), tr\u00e4gt den Pfad zum Script-Verzeichnis (&#8222;Arbeitsverzeichnis&#8220;, 3) ein und den Befehl zum Ausf\u00fchren des Scripts (4), dann bei (5) den Zweck des Scripts, bei (6) seinen Namen (freie Wahl) und bei (7) ein Icon. Schliesslich speichert man (8) und schliesst das Fenster. Somit ist der Eintrag im Startmen\u00fc gemacht und fortan dort zu finden.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-5662\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/Programm-Menue-A-284x300.png\" alt=\"\" width=\"284\" height=\"300\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/Programm-Menue-A-284x300.png 284w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/Programm-Menue-A-142x150.png 142w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/Programm-Menue-A.png 379w\" sizes=\"auto, (max-width: 284px) 100vw, 284px\" \/><\/p>\n<p>Diesen Punkt kann man von jetzt an anw\u00e4hlen, dann verwandelt sich (wieder in unserem konkreten Fall) der Cursor in ein Kreuz, man klickt auf ein Fenster, und kurz darauf \u00f6ffnet sich ein Editor-Fenster mit dem Ergebnis. Eventuell wird man aufgefordert, den Editor zu aktualisieren, und sieht erst dann das Ergebnis. Oder man muss das Editor-Fenster noch in den Vordergrund holen.<\/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=\"5480\" 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\">1    <\/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=\"5480\" 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\"><\/span>\r\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Lange Terminal-Befehle oder -Befehlsketten k\u00f6nnen sich wohl die wenigsten merken. Deshalb muss man sie sich notieren &#8211; oder man kann sie ins Startmen\u00fc legen, genauer: Man legt eine Script-Datei mit u.a. dem Terminalbefehl an und ruft dieses Script zum Ausf\u00fchren vom Startmen\u00fc aus auf \u2013 wie irgendein Programm, das bei der Installation einen Eintrag im [&hellip;]<\/p>\n","protected":false},"author":18,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,545],"tags":[594,595,63,596,6],"class_list":["post-5480","post","type-post","status-publish","format-standard","hentry","category-terminal","category-xfce","tag-befehle","tag-fensterinfos","tag-scripts","tag-startmenue","tag-terminal"],"_links":{"self":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/5480","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\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/comments?post=5480"}],"version-history":[{"count":20,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/5480\/revisions"}],"predecessor-version":[{"id":5692,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/5480\/revisions\/5692"}],"wp:attachment":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media?parent=5480"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/categories?post=5480"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/tags?post=5480"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}