• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

[AppleScript] Netzwerkumgebung wechseln

stoebe

Uelzener Rambour
Registriert
23.12.05
Beiträge
371
Hi Jungs,

und zwar kam mir soeben die Idee, meine Netzwerkumgebungen evtl. per AppleScript zu wechseln. Hintergrund ist folgender: Da ich in der Schule und Zuhause zwei verschiedene Netzwerkumgebungen benutze, muss ich diese immer manuell umstellen. Ich bin jedoch ein sehr gemütlicher Mensch, weshalb mir das morgens um 7:45 zuviel ist oder ich es gar vergesse. Meine Idee war, dass mir am Anfang einfach ein kleiner Dialog aufpoppt, der mich danach fragt, welche Umgebung ich denn benutzen möchte. Habe mich da nun ein bisschen reingearbeitet und versuche verzweifelt mit dem Programm "Internet Connect" meine Umgebung zu wechseln - ich verzweifle noch. Hätten da vielleicht ein paar renomierte AppleScript-Profis ein paar Tipps, wie ich dies (insbesondere das automatisierte Wechseln der Umgebung) realisieren könnte? Denke da vielleicht an pete oder dergleichen, da ich deren Qualitäten bzgl. AppleScript kenne und schätze. Es sei euch gedankt.


Grüße,

stoebe
 

pete

Gast
Meinst Du mit Netzwerk-Umgebung die Einstellung in der Systemeinstellung "Netzwerk"? In dem Fall hilft Dir das Programm "Internet-Connect" nicht weiter, so weit ich das überblicke.

Allerdings weiß ich nicht, wie man die Systemeinstellung per AppleScript einstellen kann. Eine entsprechende Scripting-Addition habe ich noch nicht gefunden. Vermutlich wäre es einfacher, das per "do shell script" mit einem Terminal-Kommando zu machen, aber da muss ich auch suchen.

Wie gesagt, falls Du die Systemeinstellung meinst.

Ich muss noch in die Stadt und melde mich später wieder.

Gruß, pete

----
edit

Noch was:

1. Du kannst die Netzwerkumgebung ganz bequem mit "Apple-Menü - Umgebung" ändern.

2. Du kannst mit der Systemeinstellung "Tastaturkurzbefehle" den Einträgen in "Apple-Menü - Umgebung" eindeutige Tastenkürzel zuweisen. Das wäre blitzschnell und noch viel bequemer als ein Script-gesteuerter Dialog, in dem Du so ohne weiteres kein Pop-Up-Menü unterbringen kannst.

3. Über diesen Weg beziehungsweise mit der Systemeinstellung "Netzwerk" und mit GUI-Scripting könntest Du die Menüeinstellung (also das "Häkchen") dann auch per Script steuern. Aber das wäre irgendwie umständlich, finde ich.

So , jetz bin ich aber weg.
 
Zuletzt bearbeitet von einem Moderator:

eXiNFeRiS

Schöner von Bath
Registriert
30.08.05
Beiträge
3.652
Ja das geht. Ich nutze es bereits in der Art das sobald ich mein Netzwerk-Kabel abstecke Airport deaktiviert wird und mir eine Umgebungs-Auswahlliste angezeigt wird. Das gleiche Spiel umgekehrt wenn ich das Netzwerkkabel abziehe wird Airport wieder aktiv und ich kann erneut eine Umgebung wechseln. Ich muß zuhause den Link der Seite raussuchen wo das Script aufgelistet ist.
 

pete

Gast
Ja das geht. Ich nutze es bereits in der Art das sobald ich mein Netzwerk-Kabel abstecke Airport deaktiviert wird und mir eine Umgebungs-Auswahlliste angezeigt wird. Das gleiche Spiel umgekehrt wenn ich das Netzwerkkabel abziehe wird Airport wieder aktiv und ich kann erneut eine Umgebung wechseln. Ich muß zuhause den Link der Seite raussuchen wo das Script aufgelistet ist.

Perfekt. Das lässt sich dann sicher umstricken.


Hier nochmal kurz zur Verdeutlichung, wie ich es machen würde:

1) Netzwerk-Umgebungen eindeutig benennen.

2) Ihnen ein eindeutiges Tastenkürzel zuweisen:

Netzwerkumgebung.png


3) Ganz einfach per Tastatur die Netzwerk-Umgebung wechseln:

Tastenkurzbefehle.png
 

eXiNFeRiS

Schöner von Bath
Registriert
30.08.05
Beiträge
3.652
So, habs gefunden. Das Script lautet:

tell application "System Events"
if UI elements enabled then
set UListe to title of every menu item of menu "Umgebung" of menu item "Umgebung" of menu "Apple" of menu bar 1 of process "Finder"
else
tell application "System Preferences"
activate
set current pane to pane "com.apple.preference.universalaccess"
display dialog "UI element scripting is not enabled. Check \"Enable access for assistive devices\""
end tell
end if
end tell

set UListe to items 1 thru -3 of UListe
set Auswahl to choose from list UListe
if Auswahl is not false then
set Befehl to "scselect " & Auswahl
do shell script Befehl
end if


Das Forum findet man hier:
http://www.fischer-bayern.de/phpBB2/index.php
 
  • Like
Reaktionen: stoebe

pete

Gast
So, habs gefunden.

"choose from list". Mann, ich verwende es ständig und vergaß es vorhin trotzdem. Na, so was!

Schönes Beispiel für GUI-Scripting, und wie üblich lohnt es sich bei allen Fragen zu AppleScript, Systemeinstellungen und Terminal-Kommandos, erst mal bei Fischer-Bayern nachzusehen. Diese Lektion haben wir ja schon vor längerem gelernt. :-D

Jetzt kann ich ja bei mir die Tastenkürzel wieder entfernen. :p
 

pete

Gast
Reisausschreiben!

Richtig cool wäre so ein Script - wenn man es denn wirklich unbedingt als Script mit "choose from list" haben will - natürlich ohne diesen GUI-Schlonz, von dem ich ja bekanntermaßen noch nie viel gehalten habe.

Es geht zum Glück auch ohne eingeschaltete Benutzerhilfen und UI-Scripting.

Ich spendiere einen Sack mit 1 kg Reis sowie einen Träger Wiesnbier für diejenige/denjenigen, der ein lauffähiges Script mit genau der Funktionsweise des obigen Scripts - aber komplett ohne UI-Scripting - Bis 23:59, heute am 18.09.2006, hier postet!

Na, wer traut sich?
 

pete

Gast
Hi Jungs,

tja, anscheinend konnte das Team Fischer-Bayern gestern leider kein passendes Script, welches auch ohne UI funktioniert, im Netz finden und hier rechtzeitig vor Annahmeschluß posten.

Die Lösung ist *so* einfach und passt in eine einzige Zeile. Man muss nur diesen völlig überflüssigen UI-Schlonz entfernen. Sagte ich das nicht schon?

Aber ich nenne die Lösung nicht, denn ohne zutiefst gebückte oder zumindest stark geduckte und sich selbst unterwerfende Haltung der Verlierer während einer Bittstellung an meine Durchlaucht poste ich Code nur höchst sporadisch und bei guter Laune, vor allem wenn es keine Gegenleistung gibt, z.B. Gold und Geschmeide oder Weibsleute der Region. Und ich habe sehr oft schlechte Laune.

hrr hrr hrr hrr :p
 

eXiNFeRiS

Schöner von Bath
Registriert
30.08.05
Beiträge
3.652
Hi Jungs,

tja, anscheinend konnte das Team Fischer-Bayern gestern leider kein passendes Script, welches auch ohne UI funktioniert, im Netz finden und hier rechtzeitig vor Annahmeschluß posten.

Die Lösung ist *so* einfach und passt in eine einzige Zeile. Man muss nur diesen völlig überflüssigen UI-Schlonz entfernen. Sagte ich das nicht schon?

Aber ich nenne die Lösung nicht, denn ohne zutiefst gebückte oder zumindest stark geduckte und sich selbst unterwerfende Haltung der Verlierer während einer Bittstellung an meine Durchlaucht poste ich Code nur höchst sporadisch und bei guter Laune, vor allem wenn es keine Gegenleistung gibt, z.B. Gold und Geschmeide oder Weibsleute der Region. Und ich habe sehr oft schlechte Laune.

hrr hrr hrr hrr :p


Na dann laß mal hören und spann uns nicht länger auf die Folter, ich steh hier schon zu später Stunde in gebückter Haltung und komm mir ziemlich dämlich vor dabei :p

PS: und NEIN, ich werd kein Foto davon machen ;)
 

pete

Gast
ich steh hier schon zu später Stunde in gebückter Haltung

Deine Haltung orientiert sich perfekt an der Zukunft Europas.

Aber es fehlt mir schwer an Gold, Geschmeide und Weibsleuten, um mich zur Herausgabe meiner Waren zu überzeugen. Und es fällt mir schwer, die nicht gelieferten Artikel durch guten Willen zu ersetzen.

Schlecht gelaunt bin ich nicht spendabel.

Kein produktiver Beitrag, kein Script. So einfach ist das.
 

pete

Gast
Außerdem übt der eigentliche Fragesteller das Schweigen.

Was soll man davon halten? Antworten interessieren ihn nicht? Das Problem ist gelöst? Kein Grund, nachzubessern?
 

stoebe

Uelzener Rambour
Registriert
23.12.05
Beiträge
371
Außerdem übt der eigentliche Fragesteller das Schweigen.

Was soll man davon halten? Antworten interessieren ihn nicht? Das Problem ist gelöst? Kein Grund, nachzubessern?
Hi,

natürlich bin ich noch interessiert und das Problem ist nicht gelöst. Habe nur im Moment ne Menge Schulstress und ehrlich gesagt den Thread aus den Augen verloren, da noch keine Beiträge existierten, als ich das letzte Mal nachschaute. Also, endschuldigt für meine Abwesenheit, aber dennoch vielen vielen Dank für eure Hilfe. Mit alledem kann ich sicher ne Menge anfangen; werde mich noch heute Abend dransetzen.

PS: Kann dich momentan nicht bewerten, pete, werde das aber nachholen. Danke dir für die ausführlichen Texte und Screens.


Vielen Dank,

stoebe
 
  • Like
Reaktionen: 1 Person

pete

Gast
stoebe hat mich heute an diesen Thread erinnert.

Im Anhang ist die Lösung. Wie schon Ende September angekündigt, ohne eingeschaltete Benutzerhilfen und UI-Scripting.

Die Lösung war damals schon fertig und wurde nur für echtes Interesse zurückgehalten.

Die bloße Erwähnung von "scselect" reichte nicht zur Lösungsfindung. Man muss auch wissen, wie man dieses Kommando effizient auswertet.

Ich glaube, der angehängte Code zeigt sehr schön, wie mächtig und schlank AppleScript im Zusammenhang mit Terminal-Kommandos sein kann.

Gruß, pete
 
Zuletzt bearbeitet von einem Moderator:

Bonobo

Nathusius Taubenapfel
Registriert
26.12.03
Beiträge
5.475
Die Lösung war damals schon fertig und wurde nur für echtes Interesse zurückgehalten.
Mich interessiert echt, was dies bedeutet. Paedagogische Massnahme?
 

lengsel

Carola
Registriert
11.08.05
Beiträge
112
...Die bloße Erwähnung von "scselect" reichte nicht zur Lösungsfindung. Man muss auch wissen, wie man dieses Kommando effizient auswertet...

Es war nur nach einem Kommando gefragt. Das Kommando der Wahl war in dem Fall "scselect". Wer scriptet sollte es selbständig schaffen dem erwähnten Befehl auch mal ein "man" voranszustellen. Zumal das ja auch ein eher überschaubarer Befehl ist.

Grüße,
Flo
 

pete

Gast
Es war nur nach einem Kommando gefragt. Das Kommando der Wahl war in dem Fall "scselect". Wer scriptet sollte es selbständig schaffen dem erwähnten Befehl auch mal ein "man" voranszustellen. Zumal das ja auch ein eher überschaubarer Befehl ist.

Hast Du darüber mit stoebe gesprochen?
 

pete

Gast
Lieber Pete, ich fuerchte, Du bist ganz einfach FUBAR.

Ja, genau. Wie gesagt, einfach ins Café wechseln, dort ist der Platz für Offtopic.

----
edit

Da man ja eigene Beiträge immer noch ändern darf, nehme ich mir diese Freiheit. Hier gerade noch rechtzeitig ein Link zu Bonobos Befürchtungen.
 
Zuletzt bearbeitet von einem Moderator: