Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Applescript 如何在菜单栏中添加启用和禁用代理的按钮?_Applescript - Fatal编程技术网

Applescript 如何在菜单栏中添加启用和禁用代理的按钮?

Applescript 如何在菜单栏中添加启用和禁用代理的按钮?,applescript,Applescript,我是AppleScript的新手,我需要创建新图标并将其添加到菜单栏,然后从终端执行命令以激活我的socks代理 到目前为止我所做的: tell application "Terminal" do script "networksetup -setsocksfirewallproxystate Wi-Fi on" end tell 正如我提到的,我需要:1)在菜单栏中创建一个切换按钮 2) 能够穿脱袜子 有什么想法吗? Thnx感谢那些帮助我的人,我想与大家分享这篇文章,并希望这篇文章

我是AppleScript的新手,我需要创建新图标并将其添加到菜单栏,然后从终端执行命令以激活我的socks代理

到目前为止我所做的:

tell application "Terminal"
    do script "networksetup -setsocksfirewallproxystate Wi-Fi on"
end tell
正如我提到的,我需要:1)在菜单栏中创建一个切换按钮 2) 能够穿脱袜子

有什么想法吗?
Thnx

感谢那些帮助我的人,我想与大家分享这篇文章,并希望这篇文章对大家有用

我编写了一个简单的代码,并将其放入路径
~/Library/Scripts

然后在
Script Editor.app
Preferences
选项卡下,我启用了
在菜单栏中显示脚本菜单

set socksStatus to do shell script "networksetup -getsocksfirewallproxy Wi-fi | grep Enabled"

if (offset of "Yes" in socksStatus) = 0 then
    do shell script "networksetup -setsocksfirewallproxystate Wi-fi On"
    display notification "Proxy Enabled !"
else
    do shell script "networksetup -setsocksfirewallproxystate Wi-fi Off"
    display notification "Socks disabled"

end if
正如您所看到的,当您运行代码时,它将启用代理,如果您再次运行它,它将被禁用


祝你今天愉快

除非您计划实现NSStatusItem,否则最简单的方法是启用脚本菜单(从脚本编辑器首选项),并通过~/Library/Scripts文件夹将实用程序放入其中。thnx对于您的答复,我知道,但最好将其作为菜单栏中的按钮。@Freeman-虽然这是可行的,这太过分了。您需要创建一个cocoa applescript应用程序(创建状态栏项目和处理按钮的回调都需要该应用程序):所有这些都需要运行一行代码:
do shell script“networksetup-setsocksfirewallproxystate Wi-Fi on”
@TedWrigley,thnx-Ted,按钮并不重要。我只需要在菜单栏中为该菜单或子菜单设置一个选项,这可能吗?正如@red_meane所说的,启用脚本菜单-它将状态栏菜单放置在菜单栏中,就像您想要的那样-编写一个脚本,说明我上面写的内容,并将脚本放在~/Library/Scripts中。脚本将在脚本菜单栏项中可见,并且可以从那里运行。