2012-06-13 24 views
1

我有一個C++程序寫入標準輸出,我試圖編譯成XCode中的命令行實用程序。我需要將程序編譯到發佈版本中(看起來,XCode稱爲存檔 - 去圖),而不是將其作爲調試運行。如何將STDOUT從XCode編譯的命令行可執行文件中重定向?

我基本上要管我的節目輸出到像這樣

MyProgram > TextFile.txt

一個文本文件我可以編譯程序到命令行,像這樣通過Bash shell中像這樣運行:

Open MyProgram

這產生了一個新的過程(不是我想要的)。不過,我可以忍受的,如果這個工作:

Open MyProgram > TextFile.txt

...但它:-(犯規。如果我嘗試只是直接從猛砸運行MyProgram,我得到的錯誤:-bash:MyProgram:命令未找到。

什麼我做錯了什麼?我怎麼編譯我的命令行工具,不是在Mac OSX需要打開命令?

感謝您的幫助,您可以提供的。我撿了C++在Mac平臺上,我開始發現它比Visual Studio更麻煩一點,它是否會讓我們的痛苦減輕rk與? :-)

+0

等等,你正在Bash中運行「打開MyProgram」?你是不是隻是「MyProgram」,或者可能是「./MyProgram」? –

+0

喂喂喂。是。我確實像那樣運行它。我想要做的就是按照你的描述運行MyProgram。但是當我這樣做時,我得到了「找不到命令」的錯誤。 –

+0

如果您的程序被命名爲「MyProgram」,並且位於當前目錄中,請鍵入「./MyProgram」以運行它。 –

回答

3
  • 讓您的項目成爲Command Line Tool。這將使它可以直接從命令行運行。

  • 通過鍵入./MyProgram./MyProgram > TextFile.txt而不是open MyProgram運行它。

+0

我的程序已經是命令行工具項目,它似乎不夠?有一些配置設置,我必須在項目中設置? –

+0

不,它應該輸出一個二進制文件,如果你已經在你的程序所在的目錄下,你可以輸入'/ path/to/MyProgram'或'。/ MyProgram'來運行。 – gcochard

+0

我錯過了當前路線Greg的要求。看來Open會在當前路徑中搜索,但是從bash中輸入可執行文件不會。 –