Applescript逐一运行终端命令?

时间:2018-07-22 23:17:57

标签: bash command applescript backup vps

我想使用AppleScript执行以下操作:

  1. SSH到远程服务器,并压缩文件夹
  2. 将压缩的文件夹文件下载到本地目录

我已经可以同时进行1和2了,但是问题是我不知道如何使用AppleScript一次又一次地进行操作。

当前代码如下:

set currentTab to do script("ssh balahbala")
delay 3
do script("pswd") in currentTab
do script("tar -cvzf xxx.tar.gz server_path) in currentTab
set currentTab to do script("scp server:xxx local")
do script ("pswd") in currentTab

但是我无法在tar运行完成之前执行scp,而且我也不想为tar使用延迟,因为如果这样做,我必须预测时间tar正在运行...

scp完成后,是否可以使用AppleScript运行tar

2 个答案:

答案 0 :(得分:1)

您不需要终端。使用

set yourscript to "command 1;command 2;command 3" 

do shell script quoted form of yourscript

答案 1 :(得分:0)

do shell script "say '1';
say '2';
say '3';
"

;意思是要换行的脚本,对不起我的英语不好。