2013-12-10 31 views
5

所以,我有一個shell腳本來自動化一些SVN命令。我在腳本期間輸出日誌文件和標準輸出,並將SVN輸出指向/ dev/null。現在我想在我的日誌記錄中包含SVN輸出,但爲了將其與我自己的輸出分離,我想在SVN輸出的每一行預先輸入一個\t。這可以通過shell腳本來完成嗎?在外部腳本輸出之前添加製表符

編輯 這是我可以使用AWK的東西嗎?我會調查!

編輯 所以,使用AWK似乎有伎倆。可悲的是,我不能讓它與svn命令一起工作。

svn add * | awk '{ print "\t"$0 }' 

不帶預加製表符的輸出。但是,如果我運行例如ls

ls -l | awk '{ print "\t"$0 }' 

該目錄列在每行前面的製表符。

編輯 Thanks @daniel!我結束了這個

svn add * 2>&1 | sed 's/^/\t/' 

也許藏漢注意,AWK可以很好地用於此,正確使用

svn add * 2>&1 | awk '{print "\t"$0 }' 
+0

到目前爲止你有什麼代碼? – Daniel

+0

嗯,我想我可以使用AWK爲此。雖然我不知道如何將SVN的輸出指向AWK。等等,我會在一秒鐘內登錄並獲取代碼 –

回答

6

時,您可以使用桑達。您可以將其管理到Sed,而不是將SVN命令的輸出重定向到/dev/null

svn ls https://svn.example.com 2>&1 | sed 's/^/ /' 
相關問題