如何从终端运行命令行应用程序?

时间:2011-10-15 20:00:32

标签: xcode macos

我最近从Windows转换为Macbook Pro。我正在使用Xcode。我喜欢的一件事是在终端中运行调试应用程序。目前,我必须按Command + R才能在Xcode中编译和运行。要让应用程序在终端中运行,我必须通过打开Products文件夹,右键单击应用程序,然后“打开为外部编辑器”来执行其他步骤。然后终端打开并运行程序。

我希望通过按Command + R自动执行此操作。在我看来,有一个设置来指导输出。

有没有完成此任务的步骤?

3 个答案:

答案 0 :(得分:7)

首先,制作一个新方案(或编辑当前方案)并将可执行文件更改为Terminal.app:

Scheme Info

然后,在“Arguments”选项卡下,确保将“Base Expansions On”设置为您的App。然后放open -a ${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}

Scheme Arguments

该命令将扩展为open -a /Users/Me/Library/Developer/Xcode/DerivedData/MyProj-abcdefghijklmnopqrrstuvwxyz/Build/Products/Debug-iphonesimulator/Universal.app

open -a是您从命令行打开应用程序的方式。

修改:改用${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}(参见评论)。

答案 1 :(得分:2)

以chown的富有洞察力的想法为基础:

  1. 创建一个包含以下内容的AppleScript文件:

    on run argv
        set product to item 1 of argv
        tell application "Terminal"
            activate
            do script product
        end tell
    end run
    

    此AppleScript打开Terminal.app并在Terminal.app

    中运行第一个命令行参数

    在我的配置中,我将其runproduct.scpt保存在$HOME/bin下。

  2. 添加新方案(您可以复制当前方案)或编辑当前方案。在“信息”选项卡中,将可执行文件设置为/usr/bin/osascript,这是一个执行AppleScripts的程序:

    enter image description here

  3. 在Arguments选项卡中,添加两个参数:AppleScript位置(${HOME}/bin/runproduct.scpt)和目标可执行位置("${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}"),后者是传递给AppleScript的第一个参数:< / p>

    enter image description here

  4. 我不确定是否可以使用调试器。

答案 2 :(得分:1)

在Xcode中(至少在8版本),有一个复选框&#34;使用终端&#34;可从编辑方案获得...&gt;运行&gt;选项&gt;安慰。使用该选项,Xcode启动系统Terminal.app,并附带二进制文件(例如,用于调试目的)。

enter image description here