macOS-代碼調(diào)用Terminal執(zhí)行腳本或者殺死進(jìn)程窗口

1,調(diào)起Terminal

使用NSWorkspace調(diào)起應(yīng)用,path指的是你的腳本路徑,后面參數(shù)是Terminal.app路徑


2,命令殺死Terminal

killall Terminal

效果很霸道,直接殺死終端Terminal的所有窗口并關(guān)閉應(yīng)用。但是有缺點(diǎn):用戶(hù)再次打開(kāi)Terminal會(huì)顯示上次操作內(nèi)容,killall Terminal本身執(zhí)行跟電源瞬間崩潰的情況類(lèi)似,屬于不正常關(guān)閉。

3,關(guān)閉Terminal當(dāng)前第一個(gè)窗口

osascript -e 'tell application "Terminal" to close first window'

該AppleScript執(zhí)行時(shí)會(huì)觸發(fā)Terminal提示

如果想要不彈出提示框的執(zhí)行下面AppleScript

osascript?-e?"tell application \"System Events\" to keystroke \"w\" using command down"?

//模擬的CMD?+?w?按鍵

直接執(zhí)行會(huì)報(bào)錯(cuò),

execution error: “System Events”遇到一個(gè)錯(cuò)誤:“osascript”不允許發(fā)送按鍵。 (1002)

原因在于這種操作屬于隱私權(quán)限,osascript本身不允許發(fā)送按鍵操作。除非你在設(shè)置中打開(kāi)權(quán)限

如上圖所示,你勾選終端后,再去執(zhí)行AppleScript就沒(méi)有任何提示,直接關(guān)閉了窗口

當(dāng)前Mac版本:macOS Catalina 10.15.6

學(xué)習(xí)記錄,分享~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容