Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
[Suche] Hilfe mit Linux
#1
Hallo Leute , ich versuche seit geraumer Zeit ein Shell Script zu basteln welches Chromium dazu bringt 3 Fenster zu öffnen (Reihenfolge egal) und diese geöffnet zu lassen.

Mein bisheriger Ansatz sieht so aus : 

Ein "Dienst" im Autostart Verzeichnis von /etc/xdg/autostart welcher als "Chromium.desktop" benannt ist mit folgendem Inhalt :

Code:
[Desktop Entry]
     Type=Application
     Name=Chromium
     Comment=Chromium Webbrowser
     NoDisplay=false
     Exec=/home/pi/Desktop/chromiumURL.sh


Das Shell Skript im Desktop hat folgenden Inhalt :

Code:
#!/bin/bash
# URLs, die du öffnen möchtest

URL1="*.*"  (gekürzt wegen Fremdwerbung)
URL2="*.*"  (gekürzt wegen Fremdwerbung)  
URL3="*.*"  (gekürzt wegen Fremdwerbung)

# Erstes Fenster
chromium-browser --new-window "$URL1" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Zweites Fenster
chromium-browser --new-window "$URL2" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Drittes Fenster
chromium-browser --new-window "$URL3" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

So weit , so gut. Nach dem Neustart öffnet sich manchmal 1 Fenster , manchmal 2 , manchmal auch alle 3 ... leider erkenne ich kein Muster welches mir verrät warum nicht alle 3 gleichzeitig geöffnet werden. Da ich ein absoluter Anfänger bin was Linux betrifft und ich weiss das sich hier Einige sehr viel besser auskennen :

Hat vielleicht einer von Euch eine Idee woran es liegen könnte das nicht alle 3 gleichzeitig geöffnet werden ?
Ich gebe Euch nicht Das , wonach Ihr verlangt. Ich gebe Euch Das , was ihr braucht ! 
Von jeglichen Aktionen meinerseits ausgeschlossene User ID´s :  6162 , 7796
Zitieren
Bedankt haben sich:
#2
Shell-Scripting ist bei mir etwas was her, aber dennoch kann ich auf den ersten Blick da keinen Fehler erkennen. Aufgrund deiner Beschreibung gehe ich eher davon aus, dass das Script ausgeführt wird, bevor alle benötigten Ressourcen dafür bereitstehen. Das würde auch erklären, weshalb manchmal 1, 2 oder alle 3 Fenster geöffnet werden. 

Prinzip könnte man das überprüfen, in dem du einfach mal ein Sleep einbaust von z. B. 30 Sekunden (sleep 30):

Code:
#!/bin/bash
# URLs, die du öffnen möchtest

URL1="*.*"  (gekürzt wegen Fremdwerbung)
URL2="*.*"  (gekürzt wegen Fremdwerbung) 
URL3="*.*"  (gekürzt wegen Fremdwerbung)

# Kurzes pausieren um sicherzustellen, dass die benötigten Ressourcen vom Betriebssystem geladen wurden, Zeitangabe in Sekunden
sleep 30

# Erstes Fenster
chromium-browser --new-window "$URL1" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Zweites Fenster
chromium-browser --new-window "$URL2" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Drittes Fenster
chromium-browser --new-window "$URL3" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

Theoretisch könntest du den Code auch optimieren (URLs in ein Array packen, Funktion erstellen zum öffnen des Browserfenster, das Ganze in einer For-Schleife iterieren, so müsste dann nur das Array erweitert werden, falls noch weitere URLs hinzugefügt oder gar entfernt werden).
Zitieren
Bedankt haben sich: klickslave
#3
(02.08.2023, 09:30)smssam schrieb: Shell-Scripting ist bei mir etwas was her, aber dennoch kann ich auf den ersten Blick da keinen Fehler erkennen. Aufgrund deiner Beschreibung gehe ich eher davon aus, dass das Script ausgeführt wird, bevor alle benötigten Ressourcen dafür bereitstehen. Das würde auch erklären, weshalb manchmal 1, 2 oder alle 3 Fenster geöffnet werden. 

Prinzip könnte man das überprüfen, in dem du einfach mal ein Sleep einbaust von z. B. 30 Sekunden (sleep 30):

Code:
#!/bin/bash
# URLs, die du öffnen möchtest

URL1="*.*"  (gekürzt wegen Fremdwerbung)
URL2="*.*"  (gekürzt wegen Fremdwerbung) 
URL3="*.*"  (gekürzt wegen Fremdwerbung)

# Kurzes pausieren um sicherzustellen, dass die benötigten Ressourcen vom Betriebssystem geladen wurden, Zeitangabe in Sekunden
sleep 30

# Erstes Fenster
chromium-browser --new-window "$URL1" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Zweites Fenster
chromium-browser --new-window "$URL2" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

# Drittes Fenster
chromium-browser --new-window "$URL3" --noerrordialogs --disable-session-crashed-bubble --disable-infobars --force-device-scale-factor=1.00 --start-maximized &

Theoretisch könntest du den Code auch optimieren (URLs in ein Array packen, Funktion erstellen zum öffnen des Browserfenster, das Ganze in einer For-Schleife iterieren, so müsste dann nur das Array erweitert werden, falls noch weitere URLs hinzugefügt oder gar entfernt werden).


Tatsächlich warens die Ressourcen, welche nicht bereit standen. Hab die Wartezeit reingehauen und siehe da : Es läuft wie gewünscht Smile

Danke !
Ich gebe Euch nicht Das , wonach Ihr verlangt. Ich gebe Euch Das , was ihr braucht ! 
Von jeglichen Aktionen meinerseits ausgeschlossene User ID´s :  6162 , 7796
Zitieren
Bedankt haben sich:
#4
Kein Thema :-) Freut mich, das ich helfen konnte.
Zitieren
Bedankt haben sich:


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste