通过AppleScript运行shell脚本

时间:2013-01-22 14:58:24

标签: terminal applescript

这是我第一次尝试创建终端脚本,然后使用AppleScript运行代码。我已经在终端中逐行测试了我的终端脚本(它有效......),但是想把它放在一个可以被applescript调用的文件中。到目前为止,我已经创建了一个名为"/Applications/MAMP/htdocs/global_admin/import_database_command_line.sh"的文件,我保存了所有单独的命令,第一个是:

/Applications/MAMP/Library/bin/mysql --host=localhost -uroot -proot;

然后我使用AppleScript将脚本调用为:

do shell script
"/Applications/MAMP/htdocs/global_admin/import_database_command_line.sh"

不幸的是,对于我脚本中的每一行,我都会收到错误,例如:

error "/Applications/MAMP/htdocs/global_admin/import_database_command_line.sh:
line 1: : command not found

协助我的AppleScript和包含我的shell命令的文件的任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:2)

您需要在.sh文件的第一行包含#!/bin/sh

#!/bin/sh

echo "Hello, world!"

然后,您需要使脚本可执行:

chmod +x import_database_command_line.sh

答案 1 :(得分:0)

这是因为'do shell script'AppleScript命令期望运行引号中包含的shell命令。它并不期望像你一样调用另一个脚本。只需将命令放在引号内,用分号分隔。

做shell脚本“/ Applications / MAMP / Library / bin / mysql --host = localhost -uroot -proot; #other_command; #etc”

Link