Alfex
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
Ich möchte ein kleines script, also eine sh Datei, einfach per Maus starten und nicht im Terminal über den Befehl ./script.sh In dem script steht lediglich folgendes: watch -n5 fswebcam -v -r "800x600" foto.jpg
Das script erstellt einfach alle 5 Sekunden ein Foto mit der webcam und (über-)speichert es immer wieder als foto.jpg Funktioniert auch so wie es soll wenn ichs im Terminal starte. Ich möchts aber direkt per Maus starten, zum einen weils bequemer ist und zum anderen alleine weil ich an so einer Kleinigkeit gerade verzweifle wo ich denke das kann doch kein Problem darstellen... Ich hab in der sh Datei noch als erste Zeile
#!/bin/sh
angefügt.
Seitdem fragt mich mein Lubuntu wenn ich die Datei per Maus starte ob ich die Datei "Ausführen" "Im Terminal ausführen" "Öffnen" oder "Abbrechen" möchte. Wähle ich "Ausführen" passiert nichts. Wähle ich "Im Terminal ausführen" öffnet sich das Terminal, es steht aber nichts weiter drin, es öffnet sich einfach nur ganz normal. Wähle ich "Öffnen" öffnet sich das script mit mit Leafpad Wähle ich "Abbrechen" ...klar soweit 😉 Im Terminal starte ichs auch als normaler Benutzer (nicht als root per sudo), die Datei gehört mir (dem normalen Benutzer) und hat die Berechtigungen -rwxrwxr-x So wer kann mir sagen was ich vergessen habe? ☺ Und gibts unter Lubuntu auch die Möglichkeit direkt aus dem Filebrowser das Terminal zu öffnen um nicht erst im Terminal "cd /usw/und/sofort" eingeben muss ? Bei Ubuntu wird mir das immer angeboten beim Rechtsklick auf einen freien Bereich. So wie ich das sehe gibts unter Lubuntu 2 fileexplorer, einmal der standard der einfach "Dateien" heißt und den "PCManDM Dateimanager" Unterschieden sich aber kaum. Moderiert von Cruiz: Dieses Thema ist verschoben worden. Bitte beachte die als wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“)!
|
Xeno
Ehemalige
Anmeldungsdatum: 6. April 2005
Beiträge: 2572
Wohnort: Schweiz
|
Hallo Alfex Blöde Frage: Hast Du den Skript je ausführbar gemacht? Leider weiss ich gerade nicht auswendig, wie man das in Lubuntu grafisch macht (in Ubuntu kann man das per Rechtsklick und dann Eigenschaften/Zugriffsrechte und dann ein Kästchen markieren). Dass muss man natürlich pro Skript nur einmalig machen. Wenn nicht das das Problem ist, müsste Dich wohl jemand supporten der den Dateimanager und was damit zusammenhängt von Lubuntu gut bzw. überhaupt kennt. Lg X.
|
Alfex
(Themenstarter)
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
Xeno schrieb:
Blöde Frage: Hast Du den Skript je ausführbar gemacht? Leider weiss ich gerade nicht auswendig, wie man das in Lubuntu grafisch macht (in Ubuntu kann man das per Rechtsklick und dann Eigenschaften/Zugriffsrechte und dann ein Kästchen markieren). Dass muss man natürlich pro Skript nur einmalig machen.
Ich dachte eine Datei "ausführbar" machen bedeutet die Rechte entsprechend zu vergeben?
Ich habe deswegen oben extra die Berechtigungen mit dazugeschrieben, die steht auf "-rwxrwxr-x"
Also ausführen kann die Datei absolut jeder so wie ich das verstehe?
|
sebix
Moderator, Webteam
Anmeldungsdatum: 14. April 2009
Beiträge: 5329
|
Alfex schrieb: Wähle ich "Ausführen" passiert nichts.
Wenn das Programm keine eigene Oberflaeche oder andere Programme startet, passiert nichts. Wähle ich "Im Terminal ausführen" öffnet sich das Terminal, es steht aber nichts weiter drin, es öffnet sich einfach nur ganz normal.
Ist dies die gleiche Reaktion, wie wenn du es im Terminal startest?
Und gibts unter Lubuntu auch die Möglichkeit direkt aus dem Filebrowser das Terminal zu öffnen um nicht erst im Terminal "cd /usw/und/sofort" eingeben muss ? Bei Ubuntu wird mir das immer angeboten beim Rechtsklick auf einen freien Bereich. So wie ich das sehe gibts unter Lubuntu 2 fileexplorer, einmal der standard der einfach "Dateien" heißt und den "PCManDM Dateimanager" Unterschieden sich aber kaum.
Schau mal im Menu unter Hilfe/Help > Ueber/About nach, wie das Programm tatsaechlich heisst. Dann koenne wir nachsehen, ob es ein Paket gibt, das die Schaltflaeche hinzufuegt.
|
Xeno
Ehemalige
Anmeldungsdatum: 6. April 2005
Beiträge: 2572
Wohnort: Schweiz
|
Alfex schrieb: Xeno schrieb:
Blöde Frage: Hast Du den Skript je ausführbar gemacht? Leider weiss ich gerade nicht auswendig, wie man das in Lubuntu grafisch macht (in Ubuntu kann man das per Rechtsklick und dann Eigenschaften/Zugriffsrechte und dann ein Kästchen markieren). Dass muss man natürlich pro Skript nur einmalig machen.
Ich dachte eine Datei "ausführbar" machen bedeutet die Rechte entsprechend zu vergeben?
Ja stimmt, mit der dem Recht "x". Wenn Du das korrekt im Terminal gemacht hast, ist das natülich ebensogut wie mein Vorgehen mit dem Häkchen. Ich habe deswegen oben extra die Berechtigungen mit dazugeschrieben, die steht auf "-rwxrwxr-x"
Also ausführen kann die Datei absolut jeder so wie ich das verstehe?
Mache vielleicht nochmals | chmod +x /pfad/zu/mein_Skript
|
mit angepasster Angabe logischerweise. Lg X.
|
n00bfl
Anmeldungsdatum: 22. August 2015
Beiträge: 230
|
jo.. du kannst ein Starter anlegen mit dem befehl lxterminal -e sh /pfad/pfad/pfad/deinscript.sh - dann reicht ein doppelklick
|
Alfex
(Themenstarter)
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
Ist dies die gleiche Reaktion, wie wenn du es im Terminal startest?
Nein ich meine damit es startet ein leeres Terminal, es steht nur "alexander@u100:~$"
wenn ich das Script im Terminal starte kommt ne menge Text von dem webcam programm, und ich merk a auch ob das foto erstellt wird oder nicht 😀 Schau mal im Menu unter Hilfe/Help > Ueber/About nach, wie das Programm tatsaechlich heisst.
PCManFM 1.2.3. Der andere Dateimanager den ich meine scheint der gleiche zu sein, hat nur zwei leicht verschieden aussehende Oberflächen... Mache vielleicht nochmals chmod +x /pfad/zu/mein_Skript mit angepasster Angabe logischerweise.
Hab ich gemacht, aädert nichts 😉 jo.. du kannst ein Starter anlegen mit dem befehl lxterminal -e sh /pfad/pfad/pfad/deinscript.sh - dann reicht ein doppelklick
Der Befehl startet mein Script einmalig, mehr aber nicht O.o Danach gehts auch nicht per Maus. Nebenbei ist das so für mein script unpraktisch mnerk ich da ich nicht genau definiert hab wo das foto gespeichrt werden soll, es wird immer da gestartet von wo aus man den befehl startet. Bin bisher immer in den entsprechenden ordner im Terminal mit cd navigiert. Ist aber glaub ich gerade eher unrelevant für das worums mir eig geht.
|
Mooi
Anmeldungsdatum: 15. August 2014
Beiträge: 187
|
Der Befehl muss in einen Programmstarter in die Zeile "Exec=". https://wiki.ubuntuusers.de/.desktop-Dateien Den Starter (die .desktop-Datei) kannst Du speichern wohin Du magst. Ein nettes Icon, Tooltipps u.s.w. sind dann auch möglich.
|
coram
Anmeldungsdatum: 17. Januar 2015
Beiträge: 645
Wohnort: Freiburg
|
Hallo Alfex, ich habe mal versucht, unter Lubuntu das Skript nachzustellen. Da ich leider keine Webcam besitze, lasse ich das Skript ersatzweise alle 5 Sekunden einen Screenshot mit scrot erstellen:
#!/bin/sh
watch -n5 scrot $w800 $h600 screenshot.jpg
Aus dem Dateimanager PCManFM heraus kann ich das Skript korrekt ausführen, wenn ich nach Doppelklick die Option "Im Terminal ausführen" auswähle (bei nur "Ausführen" passiert allerdings wirklich nichts). Ein Starter, wie in anderen Beiträgen vorgeschlagen, ist zwar schön, aber nicht zwingend notwendig. Es ist mir rätselhaft, warum Du, anders als ich, das Skript via Doppelklick nicht im Terminal ausführen kannst. Alfex schrieb: Und gibts unter Lubuntu auch die Möglichkeit direkt aus dem Filebrowser das Terminal zu öffnen um nicht erst im Terminal "cd /usw/und/sofort" eingeben muss ? Bei Ubuntu wird mir das immer angeboten beim Rechtsklick auf einen freien Bereich.
Im Dateimanager PCManFM Rechtsklick auf ein Ordnersymbol (also nicht auf einen "freien Bereich") und anschließend Option "Im Terminal öffnen" auswählen.
|
Alfex
(Themenstarter)
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
hallo Coram, Danke für deinen Versuch!
Ich habe genau dein Script auch ausprobiert, bei mir gehts nur wenn ich das Script aus dem Terminal heraus starte ☹
Beim Starten per mausklick und dann "im termianl öffnen" öffnet sich wie bisher nur das Terminal, ohne das was besonderes drin steht (nur wie oben genannt das normale alexander@u100: und dem Pfad in der die Datei liegt) Aber Danke für den Tipp mit "Im Terminal öffnen" mit PCManFM, das hat zumindest funktioniert ☺ Ich wunder mich aber auch wieso das bei mir nicht klappt O.o Habe Lubuntu 15.04 x86
|
coram
Anmeldungsdatum: 17. Januar 2015
Beiträge: 645
Wohnort: Freiburg
|
Alfex schrieb: Ich wunder mich aber auch wieso das bei mir nicht klappt O.o Habe Lubuntu 15.04 x86
Ich habe Lubuntu 14.04 x86, kann mir aber kaum vorstellen, dass dies einen Unterschied macht. Das einzige, was mir noch einfällt, ist, dass möglicherweise in Deinen PCManFM-Einstellungen irgendwas verbogen ist. Was ist bei Dir unter Bearbeiten > Einstellungen > Erweitert > Programme > Terminal-Emulator eingetragen? Bei mir steht dort lxterminal %s. Sollte es damit bei Dir nicht funktionieren, könntest Du es mal stattdessen mit lxterminal -e %s oder auch x-terminal-emulator -e %s versuchen.
|
Alfex
(Themenstarter)
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
Bei mir steht da lxsession-default-terminal %s Ich setze gerade eine virtuelle Maschine mit Lubuntu auf meinem anderen Laptop unter Win 7 auf und werde da mal probieren ein script zu starten.
|
Alfex
(Themenstarter)
Anmeldungsdatum: 9. Oktober 2015
Beiträge: 16
|
Sooo ich hab noch eine VM mit 15.04 erstellt und es da ausprobiert: Gleiches Ergebnis, geht nicht. Zur Sicherheit noch eine VM mit Lubuntu 14.04.3 x86: Gleiches Ergebnis, geht nicht. Dann hab ich die von Dir vorgeschlagene Einstellung noch überprüft, bei allen 3en (also meine native Installation und die beiden neuen VM's) haben da den Eintrag lxsession-default-terminal %s Das muss also die Standardeinstellung sein, man sollte ja annehmen dass das also soweit ok ist... aber nein... Hab es jetzt auf lxterminal %s geändert und schon läufts! Kann mir jetzt jemand verraten wie diese Einstellung da zustande kommt? Ich hab ja jetzt 3 mal Lubuntu und bei allen 3en ist es mit default Einstellung nicht möglich die sh Datei per Maus zu starten. Coram, hast du diese Einstellung von Hand so eingetragen oder war das bei dir schon so?
|
coram
Anmeldungsdatum: 17. Januar 2015
Beiträge: 645
Wohnort: Freiburg
|
Na, erst einmal ist es doch schön, dass es jetzt überhaupt läuft! Alfex schrieb: Coram, hast du diese Einstellung von Hand so eingetragen oder war das bei dir schon so?
Sorry, aber ich kann mich leider gar nicht mehr erinnern, ob das schon die vorgegebene Einstellung war oder erst später von mir eingetragen wurde. Interessehalber habe ich es jetzt auch mal mit lxsession-default-terminal %s ausprobiert – damit klappt es bei mir genau so wenig wie bei Dir. Nebenbei verwirrt mich gerade die Frage, warum manche Shell-Skripte im Terminal gestartet werden müssen, andere aber auch ohne Terminal laufen. Wenn ich die obige scrot-Schleife nämlich ganz anders programmiere, funktioniert sie auch, wenn ich nach dem Rechtsklick einfach "Ausführen" (d.h ohne Terminal) wähle:
#!/bin/sh
while true; do scrot $w800 $h600 screenshot.jpg & sleep 5; done
|
Hibernator
Anmeldungsdatum: 7. Oktober 2015
Beiträge: 55
|
coram schrieb: Nebenbei verwirrt mich gerade die Frage, warum manche Shell-Skripte im Terminal gestartet werden müssen, andere aber auch ohne Terminal laufen. Wenn ich die obige scrot-Schleife nämlich ganz anders programmiere, funktioniert sie auch, wenn ich nach dem Rechtsklick einfach "Ausführen" (d.h ohne Terminal) wähle:
Das Skript laeuft, bis es beim EOF angekommen ist. Die Endlosschleife tut das nicht. Du kannst das erste Beispiel aber auch benutzen, wenn du ans Ende der Zeile "watch ..." ein & anhaengst (Background job).
|