2017-08-30 2 views
-1

Ich habe versucht, AppleScript ein wenig zu erforschen, indem ich ein paar einfache Codezeilen schreibe. Ich habe versucht, ein kleines Stück zu schreiben, das mir erlauben würde, auf die Liste der verfügbaren Wi-Fi zuzugreifen, und das Passwort zu besagtem Wi-Fi einzugeben.AppleScript Wi-Fi-Anschluss

Bis jetzt bin ich zu dem Punkt gekommen, wo es die verfügbaren Wi-Fi erkennt, erlaubt mir aber nicht, das Wi-Fi in eine Zeichenfolge zu machen. Ich habe den Code für die Auswahl des Wi-Fi aus einer Liste geschrieben, aber ich kann nicht herausfinden, wie man die Wi-Fi's in eine Liste verwandelt.

Würde mir jemand helfen, das herauszufinden?

display dialog "Wifi Selector © Afnaan Qureshi" 
set main to display dialog " ." buttons {"Quit", "Enter Password"} 
if main = {button returned:"Enter Password"} or trueaftermain = "1" then 


    set results to paragraphs 2 thru -1 of (do shell script "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s | sed -nE 's/[ ]*(.*) [a-z0-9]{2}:[a-z0-9]{2}:.+/\\1/p'") 
    set my_list to results 
    set AppleScript's text item delimiters to ", " 
    set list_2_string to my_list as text 
    set main to display dialog my_list 
    set wpass to choose from list {my_list} with title "Pick The Wifi" with prompt "Choose WPA2" OK button name "Choose" cancel button name "Cancel" default items {"quit"} 
end if 
+0

Ich würde vorschlagen, dass Sie sich [Wie erstelle ich ein minimales, vollständiges und überprüfbares Beispiel] (https://stackoverflow.com/help/mcve) anschaut, wenn Sie versuchen, Code zu debuggen, der für Sie nicht funktioniert. – user3439894

Antwort

0

Ihr Code ist zu kompliziert.

results ist bereits die Liste, die Sie erwarten.

set results to paragraphs of (do shell script "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s | sed -nE 's/[ ]*(.*) [a-z0-9]{2}:[a-z0-9]{2}:.+/\\1/p'") 
set wpass to choose from list results with title "Pick The Wifi" with prompt "Choose WPA2" OK button name "Choose" 

Beachten Sie, dass wpass ist auch eine Liste oder false, wenn der Benutzer

Abbrechen drückt Und wenn Sie text item delimiters sicherstellen, dass die Trennzeichen verwenden später neu einstellen unerwartetes Verhalten zu vermeiden.