【问题标题】:How to display Xcode output into terminal.app如何将 Xcode 输出显示到 terminal.app
【发布时间】:2013-02-21 14:42:33
【问题描述】:

我在将 xcode 项目输出显示到我的 terminal.app 时遇到问题。我可以让终端在运行时弹出,但是如何让“输出”显示到终端应用程序中。

【问题讨论】:

    标签: xcode xcode4 xcode4.5


    【解决方案1】:

    所有 NSLog 都会自动打印在 Terminal.app 的系统日志中。

    如果您想直接在终端中查看结果,您需要 将构建的产品作为终端的子项运行,这意味着使用 就像是 /path/debug/build/MyProgram.app/Contents/MacOS/MyProgram 启动 应用程序。

    From Here.


    编辑:

    如果您想将 NSLog 重定向到文件,请使用:

    -(void) redirectNSLogToFile {
         NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
         NSString *filePath=[paths objectAtIndex:0];
         NSString *logPath=[filePath stringByAppendingPathComponent:@"LogFile.txt"];
         freopen([logpath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr);
    }
    

    【讨论】:

    • 那么,我不必使用 xcdoe 中的输出文件了吗?
    • 我真正想要的是获取应用程序输出并将其导出到文本文件中。这是可能的还是我想多了?
    • 如果您查看图片,您可以在“所有输出”屏幕中看到我从我的应用程序获得的输出。有没有办法将其显示到文本文件和/或终端中?
    • 我喜欢这个,但我创建了 LogFile.txt 文件,但什么也没发生。我会在哪里坚持这种方法?
    • 无论你在哪里写 nslog,都用那个替换它
    【解决方案2】:

    当您在 Xcode 中运行您的应用程序时,所有输出都在“所有输出”窗格中。如果您只想保留它:选择它,复制它,然后将其粘贴到一个文件中(使用 TextEdit 或其他创建)。

    默认情况下,在 Terminal.app 中运行您的应用不会保留输出。您可以使用 Unix 管道/重定向将其放入文件中,例如:

      $ /path/to/myapp > /path/to/LogFile.txt
    

    【讨论】:

    • 我会将这个重定向放在哪里?
    • 以上是您在 Terminal.app 中键入的内容,到 shell(这是在 Terminal.app 中实际运行的内容)。
    • 收到此错误消息 /path/to/LogFile.txt: 没有这样的文件或目录
    • 符号“/path/to”表示您需要提供该信息。错误消息说“/path/to”不存在;这是真的。如果您希望“LogFile.txt”在您的“Home”文件夹中,请使用“~/LogFile.txt”;如果你想在桌面上使用“~/Desktop/LogFile.txt”
    猜你喜欢
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    • 2010-09-07
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多