1

这是我第一次尝试创建终端脚本,然后使用 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 命令的文件方面的任何帮助将不胜感激。

4

2 回答 2

2

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

#!/bin/sh

echo "Hello, world!"

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

chmod +x import_database_command_line.sh
于 2013-01-22T15:36:51.287 回答
0

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

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

关联

于 2015-06-29T11:55:22.520 回答