日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Mac OS X:遠程執行osascript命令

系統 3079 0

Mac OS X:遠程執行osascript命令及問題解決

對于系統管理/電腦維護人員,在Applr Remote Desktop的管理機上可以通過圖形方式遠程控制網絡上的每臺Mac電腦, 而很多時候需要發送Unix命令來完成工作。比如有時需要使用管理員帳戶遠程登錄到每臺電腦,大家普遍知道的命令是:

osascript -e 'tell application "System Events"' -e 'keystroke "LOGIN_NAME"' -e 'keystroke tab' -e 'delay 0.5' -e 'keystroke "PASSWORDHERE"' -e 'delay 0.5' -e 'keystroke return' -e 'end tell'

上面的命令可以讓每一個處于登錄狀態的電腦自動登錄到LOGIN_NAME用戶。這樣管理員就可以對每個電腦進行操作了.

下面是更加清晰的一個腳本版本

osascript -e 'tell application "System Events" to keystroke "LOGIN_NAME"'; /
osascript -e 'tell application "System Events" to keystroke tab'; /
osascript -e 'tell application "System Events" to delay 0.5'; /
osascript -e 'tell application "System Events" to keystroke "PASSWORDHERE"'; /
osascript -e 'tell application "System Events" to delay 0.5'; /
osascript -e 'tell application "System Events" to keystroke return'

然而實際使用中會問題:

1. 遠程計算機根本不執行上面的操作:

這個問題一般是由于被管理的電腦沒有設置為準許執行UI腳本,所以要打開它??梢酝ㄟ^兩種方式:
A. 首先以管理員身份登錄到該電腦,然后進入"System Preferences -> Universal Access",開啟在下部的選項 "Enable access for assistive devices"


B. 這個方法更簡單,而且可以遠程發送(Unix命令)到目標電腦:

echo a > /var/db/.AccessibilityAPIEnabled


2. 那個腳本只有在目標電腦處于登錄窗口的時候才可以使用. 所以,需要首先啟動目標電腦,這可以通過好多方法啟動目標機. 比如可以使用ARD菜單中的Restart命令,也可以通過發送下面的任何一個命令

osascript -e 'tell app "Finder" to restart'
shutdown -r TIME "This computer is going to restart."

其中TIME可以是now, 或者是時間比如: 10:00am等等

3. 還要注意的是如果登錄不是輸入用戶名的方式,是用戶列表的方式,那么上面的方式都不可用,需要修改為列表方式并禁止自動登錄:


4. 可以發送下面命令來使當前用戶退出到登錄狀態:

osascript -e 'tell app "Finder" to exit'

或者使用ARD的菜單命令來使用戶退出登錄.

5. 如果是目標機設置了定時睡眠,可以使用Wake命令喚醒目標機, 要求是目標機設置允許遠程喚醒:

附錄:

下面的一些osascript命令比較有用:

              
                sudo osascript -e 'tell app "[name of an open program]" to quit'
                
sudo osascript -e 'tell app "Finder" to sleep'
sudo osascript -e 'tell app "Finder" to shut down'
sudo osascript -e "set volume 0"
sudo osascript -e "beep"
sudo osascript -e 'display dialog "Did you know that you are annoying?"
buttons "Yes" with icon note'

sudo osascript -e 'tell app "Finder" to quit'
sudo osascript -e 'say "[whatever]" using "Zarvox"'
iTunes Control:
sudo open /Applications/iTunes.app; sudo osascript -e 'say "Play some music.
Go on. I dare you." using "Zarvox"'

sudo osascript -e 'tell app "iTunes" to stop' -e 'say "Please stop playing
your annoying music" using "Zarvox"'

sudo osascript -e 'tell app "iTunes" to next track' -e 'say "I did not like
that song very much" using "Zarvox"'

sudo osascript -e 'tell app "iTunes" to fast forward' -e 'say "This song is
boring" using "Zarvox"'

sudo osascript -e 'tell app "iTunes" to quit'

Mac OS X:遠程執行osascript命令


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 许昌县| 曲沃县| 高台县| 汕头市| 将乐县| 祁连县| 隆尧县| 礼泉县| 西宁市| 沂水县| 岑巩县| 内黄县| 泉州市| 西城区| 共和县| 黄浦区| 启东市| 金昌市| 绥棱县| 重庆市| 罗源县| 德令哈市| 益阳市| 柳江县| 枣强县| 嘉祥县| 溆浦县| 瑞金市| 瑞丽市| 满城县| 江山市| 上杭县| 襄樊市| 鄢陵县| 休宁县| 多伦县| 特克斯县| 山阴县| 越西县| 霍林郭勒市| 邯郸市|