在High Sierra的终端中的选项卡中运行脚本

时间:2018-09-23 19:40:56

标签: terminal tabs applescript macos-high-sierra

此AppleScript停止在High Sierra中工作并返回错误 “错误”终端出现错误:无法获取窗口1的选项卡2。”编号-1728,来自窗口1的选项卡2”

我不太擅长编写脚本,因此我们将不胜感激。

tell application "Terminal"
    activate  
    do script  
    do script "rsync -avCP --progress --stats /Volumes/TERRI1/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in tab 1 of front window  
    my makeTab()
    do script "rsync -avCP --progress --stats /Volumes/TERRI2/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in tab 2 of front window
    my makeTab()
    do script "rsync -avCP --progress --stats /Volumes/TERRI3/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in tab 3 of front window
    my makeTab()
    do script "rsync -avCP --progress --stats /Volumes/TERRI4/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in tab 4 of front window
end tell

on makeTab()
    tell application "System Events" to keystroke "t" using {command down} delay 0.2
end makeTab

1 个答案:

答案 0 :(得分:1)

经过大量Google搜索和反复试验后,此方法有效。

tell application "Terminal"
activate
do script
do script "rsync -avCP --progress --stats /Volumes/TERRI1/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in tab 1 of front window
my makeTab()
do script "rsync -avCP --progress --stats /Volumes/TERRI2/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in selected tab of front window
my makeTab()
do script "rsync -avCP --progress --stats /Volumes/TERRI3/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in selected tab of front window
my makeTab()
do script "rsync -avCP --progress --stats /Volumes/TERRI4/DCIM/NORMAL/ /Volumes/DCArchive/Vids" in selected tab of front window

结束告诉

在makeTab()上     使用{command down}告诉应用程序“系统事件”按键“ t”     延迟0.2 结束makeTab