我正在尝试编写一个脚本来检测我当前的wifi连接并在本地计算机上启动socks代理。
当我自己执行脚本时,脚本本身运行得很好。因为我希望一切都是自动的,所以我考虑使用crontab。唯一的问题是crontob本身没有输出,因此方法返回一个空字符串。在
有人能解决这个问题吗?我的脚本如下:#!/usr/bin/python
from subprocess import Popen, PIPE
import re, os
location = Popen(['networksetup', '-getcurrentlocation'], stdout=PIPE).stdout.read().split('\n')[0]
ssid = ''
for item in Popen(['/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport', '-I'], stdout=PIPE).stdout.read().splitlines():
if ' SSID' in item:
ssid = item.strip().split(': ')[-1]
if location != 'xyz' and ssid == 'abc':
# start socks proxy
pass
elif location == 'xyz' and ssid != 'abc':
# kill socks proxy
pass
print location, '|', ssid
如果有人想知道,我正在研究macos10.10.1。在