2013-06-06 103 views
0

如何連續將控制檯的輸出寫入文件,輸出可能來自兩個或更多程序。通過不斷我的意思是我應該能夠查看該文件中運行的任何程序的所有標準輸出,一旦我運行所需的命令或代碼。連續將控制檯的輸出寫入文件

+0

可能重複腳本本身](http://stackoverflow.com/questions/3173131/redirect-copy-of-stdout-to-log-file-from-within-bash-script-itself) – DevSolar

+0

對不起,我自己的自我推銷接受的答案,但是關聯問題是非常受歡迎的問題,如果有任何問題克要補充,它應該去那裏。 – DevSolar

+0

你能更準確地知道你想要什麼嗎? @Rahul已經展示了從單個程序重定向輸出是多麼的容易,但是如果你想在* all * shell中重定向* all *命令,那就完全不同了。 – l0b0

回答

2

只是重定向stdout該文件像

command > file_name 
+0

如果您想查看輸出*和*日誌,可以使用'command | tee> file_name'。 – l0b0

+0

@ l0b0,將此作爲答案,輸出重定向是一種方法,基本上重定向是繞過標準輸出,但是「tee」可以克服,並且應該是任何此類操作的理想選擇 – abasu

1

您可以通過下面的代碼開始你的bash腳本:中[重定向標準輸出複製到從慶典中日誌文件

#!/bin/bash 

exec 2> /tmp/outfile.log # send stderr from your script to a log file 
exec 1>&2      # send stdout to the same log file 
set -x 
# the rest of your code ... 
+0

「set -x」的作用是什麼? –

相關問題