|
ubuch07
Anmeldungsdatum: 7. Oktober 2007
Beiträge: 107
|
Hallo Kann mir bitte jemand sagen, wie ich den Starter von TeamViewer im Unity/Unity Startmenü nach einem Versionswechsel des Programms via Skript korrigieren kann? Auslesen der aktuell gesetzten Starter
| echo $(gsettings get com.canonical.Unity.Launcher favorites)
['ubiquity-gtkui.desktop', 'nautilus-home.desktop', 'firefox.desktop', 'google-chrome.desktop', 'thunderbird.desktop', 'libreoffice-writer.desktop', 'libreoffice-calc.desktop', 'libreoffice-impress.desktop', 'skype.desktop', 'teamviewer-teamviewer10.desktop', 'ubuntu-software-center.desktop', 'gnome-control-center.desktop']
|
Da nach einer Aktualisierung von TeamViewer der Name des Starters manuell geändert werden muss (habe zumindest nichts gefunden, was einen im Unity/Unity Startmenü gesetzten Starter automatisch anpassen würde), habe ich folgendes probiert (funktioniert jedoch nur, wenn die aktuelle Version bekannt ist, ich benötige jedoch eine variable Lösung).
| starter=$(gsettings get com.canonical.Unity.Launcher favorites)
starter2=$(echo $starter | sed -e 's/teamviewer-teamviewer10.desktop/teamviewer11.desktop/g')
gsettings set com.canonical.Unity.Launcher favorites "${starter2}"
|
Freue mich auf DIE Lösung. Gruss ubuch07
|
|
Vej
Moderator, Supporter
Anmeldungsdatum: 7. März 2013
Beiträge: 3401
|
Hallo ubuch07, verstehe ich das richtig, dass nach einem Versionsupdate automatisch eine passend benannte .desktop-Datei in /usr/share/applications angelegt wird? Falls dem so ist, könnte dein Skript doch einfach alle Dateinamen der Form "teamviewer-teamviewer*.desktop" in diesem Ordner suchen, den ersten und letzten Teil wegschneiden und die Ergebnisse vergleichen, um die größte vorhandene Nummer zu finden. Diese ergibt dann die Nummer für starter2. Die zu deinstallierende Nummer findest du ja in der Ausgabe von gsettings get com.canonical.Unity.Launcher favorites. Das so als Anregung Viele Grüße Vej
|
|
ubuch07
(Themenstarter)
Anmeldungsdatum: 7. Oktober 2007
Beiträge: 107
|
Hallo Vej, das ist absolut korrekt. Leider will es mir auf keine Art und Weise gelingen, den String zu ersetzen (meine obgenannte Variante mit sed funktioniert nur, wenn die bisherige Version bekannt ist). Weisst du die Syntax, mit welcher ich das Ersetzen variabel gestalten kann (alte Versionsnummer besteht aus 1 oder 2 Zahlen). Lieber Gruss
ubuch07
|
|
Vej
Moderator, Supporter
Anmeldungsdatum: 7. März 2013
Beiträge: 3401
|
Hallo ubuch07, du solltest Variablen einfügen können. Etwa so: | alteVersionsnummer= #Hier Code zum Bestimmen der alten Versionsnummer einfügen
neueVersionsnummer= #Hier Code zum Bestimmen der neuen Versionsnummer einfügen
starter2=$(echo $starter | sed -e 's/teamviewer-teamviewer${alteVersionsnummer}.desktop/teamviewer${neueVersionsnummer}.desktop/g')
|
Den Code für die Kommentarstellen solltest du dir wie beschrieben zusammenbauen können. Viele Grüße Vej
|