1
當我執行unison tours 2>/dev/null | grep的-A 2 '< - - >?'在bash提示符,我得到確切的輸出我要找:Bash:將包含程序輸出的變量回顯到一個文件
*changed <-?-> changed Future Tours/File Clash Test.docx
local : changed file modified on 2013-06-05 at 16:24:40 size 10221 rw-rw----
bj-server... : changed file modified on 2013-06-05 at 16:23:53 size 10232 rw-rw----*
當我把這個變成一個shell腳本:
#!/bin/bash
tmp=$(unison tours 2> /dev/null | grep -A 2 '<-?->')
echo "$tmp" > /home/users/itsystem/test.log
......它出來很奇怪。運行更test.log中,我得到如下:
- Systems Sheets/Feedback She oup).xls | Past Tours/2012/CE0 12 Cherry (N...our Menus/Lijiang Tour Menus.xls - Past Tours/2012/UC041112 St - Past Tours/2012/UC081112 Lopata (N... Menus - UC081012 Lo 2/VC110912 Levin (VI... Menus - VC110912 Levin (VI).xlsx xlsx | Future Tours/2013 Futur /Inquiries/Outstanding/Terence Park... Itinerary (Trev changed changed Future Tours/File Clash Test.docx local : changed file modified on 2013-06-05 at 16:24:40 size 10221 rw-rw---- bj-server... : changed file modified on 2013-06-05 at 16:23:53 size 10232 rw-rw----
哪裏其他垃圾是從哪裏來的?
如果現在運行齊聲那麼你得到的動畫一條線,是不斷用旋轉刷新輸出 - \ | /顯示工作文件夾,但最終消失。
如果我的grep在bash提示符下工作,爲什麼不從shell腳本啓動呢?
謝謝@chepner - 解釋額外的輸出,謝謝,雖然給我的grep子句......爲什麼它仍然在輸出文件結束? – tcpman
不知道旋轉進度指示器是如何產生的,很難給出你在日誌文件中看到的確切解釋。但它看起來像一些(但不是全部)行包含足夠的'grep'匹配的微調。 – chepner
......事情是我應該匹配'<-?->',這不會出現在任何與微調的界限,因此我的困惑。 – tcpman