Mac高效办公第一弹——使用Alfred workflow一键启动办公软件

◎软件环境:

  • macOS Sierra 10.12.5

  • Alfred 3

  • iterm2

◎功能描述:

开机正常联网后使用alfred输入start回车,即可一键完成身份认证,登陆中控机,打开QQ、WeChat、自定义网页标签等,如需打开特定IDE或其它App,请根据个人工作环境修改,添加即可。

◎实现思路:

脚本 + Alfred workflow + App把工作流打通,实现想要的功能。

workflow使用shell调用osascript脚本的方式实现,身份认证使用密码加token脚本实现,登陆中控机中间有一层relay跳板使用了expect跳过去。执行结果,异常信息等没有捕捉,有需要可自行完善。

#  One-click start office software by anzhihe 2019-02-20 

# 使用密码+token登陆relay认证,请修改为自己的信息
/usr/local/Cellar/python/3.7.1/bin/python3 /Users/anzhihe/relay.py -u anzhihe -p password -s token

# 启动办公软件
exec osascript <<EOF

-- 使用iterm2登陆中控机
  tell application "System Events"
    -- some versions might identify as "iTerm2" instead of "iTerm"
    set isRunning to (exists (processes where name is "iTerm")) or (exists (processes where name is "iTerm2"))
  end tell
  
  tell application "iTerm"
    activate
    set hasNoWindows to ((count of windows) is 0)
    if isRunning and hasNoWindows then
      create window with default profile
    end if
    select first window
    
    tell the first window
      if isRunning and hasNoWindows is false then
        create tab with default profile
      end if
      -- 使用组合键让iTerm2最大化
      tell application "System Events" 
                key code 36 using {command down}
      end tell
      tell current session to write text "/usr/local/bin/con 中控机名称或IP"
  end tell
  end tell
  
-- 启动QQ
    tell application "QQ" 
        activate --激活应用
        -- 引入系统事件 用户触发键盘
        tell application "System Events" 
            tell application process "QQ"
                activate
                set frontmost to true
                -- 在 qq 有保存 qq 号,密码的前提下,调用回车来触发 qq 登录界面的登录按钮
                key code {36}
            end tell
        end tell
    end tell
    
-- 启动WeChat
 tell application "WeChat" 
        activate 
        tell application "System Events" 
            tell application process "WeChat"
                activate
                key code {36}
            end tell
        end tell
    end tell
    
-- 启动文档编辑器
 tell application "Atom" 
        activate 
        tell application "System Events" 
            tell application process "Atom"
                activate
                key code {36}
            end tell
        end tell
    end tell
    
-- Chrome打开自定义页面标签
set urlTickets to "https://chegva.com/ticket-manager/op-tickets"
set urlAlarm to "https://chegva.com/alarm-center/alarm-event-cases"
tell application "Google Chrome"
-- 新建一个 chrome 窗口
set window1 to make new window
tell window1
-- 当前标签页加载 tickets  页面
set currTab to active tab of window1
set URL of currTab to urlTickets
-- 打开报警页面,多个页面直接依次定义添加即可
make new tab with properties {URL:urlAlarm}
-- 将焦点由最后一个打开的标签页还给首个标签页
set active tab index of window1 to 1
end tell
end tell

-- 需打开IDE,音乐等app依次添加即可。

-- 横幅显示通知消息
tell application "System Events" 
activate
    display notification "新的一天新的开始,加油!" with title "服务已启动完毕,工作愉快:)"
end tell
EOF

◎效果展示:

启动workflow:

Mac高效办公第一弹——使用Alfred workflow一键启动办公软件

完成后横幅提示:

Mac高效办公第一弹——使用Alfred workflow一键启动办公软件

不到10秒钟,办公环境就已经准备好啦,点点鼠标,敲敲键盘愉快的工作吧!

◎下载地址:https://github.com/anzhihe/Efficient-office/tree/master/one-click-start-software

预告:Mac高效办公第二弹——PopClip + Alfred + Iterm2实现一键登陆服务器

参考:

anzhihe安志合个人博客,版权所有丨 如未注明,均为原创 丨转载请注明转自:https://chegva.com/3347.html | ☆★★每天进步一点点,加油!★★☆

您可能还感兴趣的文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注