我使用命令:如何重定向時間gcc輸出到文件?
time gcc -lm test.c > time.txt
確定編譯時間等,然後將它們寫入file.BUt當我使用上面的命令沒有被打印成文件?
我哪裏錯了?
我使用命令:如何重定向時間gcc輸出到文件?
time gcc -lm test.c > time.txt
確定編譯時間等,然後將它們寫入file.BUt當我使用上面的命令沒有被打印成文件?
我哪裏錯了?
這取決於你使用的是什麼shell。在bash中,time
是內置的,不能被重定向。你必須使用一個子shell重定向其標準錯誤:
(time gcc -lm test.c) 2> time.txt
這裏的問題是有兩個命令time
。一個是bash
內置命令,另一個是通常的Unix命令。
$> type time
time is a shell keyword
$> type `which time`
/usr/bin/time is /usr/bin/time
如果你想使用bash
內置的,你應該寫爲choroba wrote:
(time gcc -lm test.c) 2> time.txt
但是,如果你想以確保即使內置的是你的腳本工作不存在,你最好儘量執行真正time
命令的用法:
`which time` -o time.txt gcc -lm test.c
欲瞭解更多信息n約time
不要猶豫做man time
。
如果你使用'在/ usr/bin中/ time'在某些系統上,如果你不使用純'time'內置只會工作。 – 2013-05-09 11:45:17
我正要編輯我的信息。它僅適用於'bash'用戶(它有一個優先使用的「內部時間」命令)。但你是對的。 – perror 2013-05-09 11:46:06
嗯,除了你假設這裏使用的'time'是內置命令。看看當你做'(\'哪個時間\'gcc -lm test.c)2> time.txt'時會發生什麼。 – perror 2013-05-09 11:53:37
@perror:其他人已經描述瞭如何處理'/ usr/bin/time'。正如我在答覆中所述,我表明瞭如何處理內建的問題。 – choroba 2013-05-09 12:00:50
他們消失了......我寫了兩種答案的總結。 – perror 2013-05-09 12:03:44