加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 如何使用参数打开AppleScript应用程序

发布时间:2020-12-16 01:26:44 所属栏目:安全 来源:网络整理
导读:我有一个AppleScript运行扫描到特定文件夹的扫描程序(命令行).我需要将参数传递给applescript,然后又将参数传递给终端. 在一个终端我想运行open -a /Applications/MyScanApp.app myargument并运行AppleScript.我怎么能通过这个论点?谢谢您的帮助!我通常是
我有一个AppleScript运行扫描到特定文件夹的扫描程序(命令行).我需要将参数传递给applescript,然后又将参数传递给终端.

在一个终端我想运行open -a /Applications/MyScanApp.app myargument并运行AppleScript.我怎么能通过这个论点?谢谢您的帮助!我通常是一名PHP程序员,这与我完全不同.

我的AppleScript:

tell application "Terminal"
    do script "./myscanprogram myargument 2>&1"
end tell
为什么没有人提到引用的形式?当您想将任意数据作为参数发送到应用程序时,您应该使用引用的形式.当引号,空格和其他特殊字符在给定路径中时,命令将在前面的示例中分解.
on run argv
    tell application "Terminal"
        do script "./myscanprogram " & quoted form of (item 1 of argv) & " 2>&1"
    end tell
end run

既然你提到你是AppleScript的新手,它必须在Terminal.app中运行还是足够的shell? AppleScript有命令do shell脚本,它打开一个shell,执行文本并将stdout返回给你.

on run argv
   do shell shell script "/path/to/myscanprogram " & quoted form of (item 1 of argv) & " 2>&1"
end run

最后但并非最不重要的.如果您不想要扫描程序的输出并且不希望AppleScript等到它完成后您可以使用

on run argv
   do script "/path/to/myscanprogram " & quoted form of (item 1 of argv) & " &>/dev/null &"
end run

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读