簡體   English   中英

根據 SSID 更改 MacOS 位置 - 無法讓腳本自動運行

[英]Changing MacOS Location based on SSID - can't get script to run automatically

我正在嘗試讓這個 GitHub 項目在我的 Mac啟動並運行,目的是在我切換物理位置時自動更改我的網絡位置(基於我連接到的 SSID)。 我有兩個問題目前無法解決。

  1. 我已經按照說明更新了相應的位置名稱和相關的 SSID,並且基本上都可以正常工作。 但是,有一個 SSID 的名稱中有空格,當我連接到該 SSID 時,它會回退到“自動”位置,因為它沒有在列表中找到匹配的 SSID。 我已經按照下面的建議更新了腳本,在所有缺少的地方加上引號,但問題似乎首先在於獲取 SSID。 日志文件回顯新的 SSID 名稱,如果我的 SSID 是my wifi它只會回顯New SSID Found: my . 因此,我可能只需要稍微更改獲取 SSID 的代碼行(如下),但我不確定如何更改。

SSID=$(/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I | awk '/ SSID:/ {print $2}')

  1. 我已經完成了自動安裝(在適當的目錄上執行了./install.sh ),並且它已經將所有文件放在了相關的位置。 但是,每當我切換 SSID 時,它都不會自動運行。 我可以在任何時候雙擊可執行文件,它會運行並選擇正確的位置,但它不會自動執行,這是練習的重點。 我在某處錯過了一步嗎?

一般來說,我對在 mac 和 GitHub 上編寫腳本非常陌生; 我以前的經驗都是在 Windows 上。 所以我可能忽略了一些非常簡單的事情,但我還沒有技能去弄清楚它在哪里。

運行 macOS Catalina 10.15.2

不錯的偵探! 如果您更改awk以使用冒號和空格作為字段分隔符,它應該可以工作:

SSID=$(AIRPORTTHING| awk -F ': ' '/ SSID:/ {print $2}')

否則,這也應該有效:

SSID=$(AIRPORTTHING| sed -n 's/^ *SSID: //p')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM