2009-05-25 152 views
4

我有一個用ansi C編寫的UNIX應用程序,它直接將數據寫入文件。該文件由參數參數之一指定。如何重定向到標準輸出?

出於測試目的,我可以使用/ dev/null作爲文件名,它可以有效地將輸出重定向到無。

我希望能夠通過類似的方法將輸出重定向到標準輸出。這可能嗎?如果是這樣,怎麼樣?我試過,沒有運氣以下:

的a.out -f的/ dev/ttys000

(其中/ dev/ttys000是一個 'W' 上市規定的TTY)

回答

15

/dev/stdout

+0

這正是我所期待的。謝謝 – 2009-05-26 12:47:04

2

你可以檢測字符串 「標準輸出」 的說法,然後使用標準輸出文件句柄在C(1) http://en.wikipedia.org/wiki/File_descriptor

或者使用/ dev/stdout或者/ dev/fd/1

如果這是一個'內置'特性而不是臨時測試的東西,你可能想在stdout文件描述符上使用C函數因爲C標準比POSIX標準imho更耐用一些。