2015-10-01 67 views
1

我正在嘗試使用grep來搜索與給定模式匹配的文件。在bash腳本中清除命令的輸出

當直接鍵入終端時,此功能正常工作,返回路徑中帶有「zips」的所有文件。

svn st -u ~/includes ~/scripts ~/htdocs/intra ~/htdocs/update ~/htdocs/sponsor ~/survey ~/htdocs/coupon | grep "zips" 

我要添加此功能bash腳本這樣我就可以叫check zips

這是我得到了什麼,但它忽略了管道之後的一切,返回的第一個命令的所有輸出。

#!/bin/bash 
QU=$1 
svn st -u ~/includes ~/scripts ~/htdocs/intra ~/htdocs/update 
~/htdocs/sponsor ~/survey ~/htdocs/coupon | grep "$QU" 

我怎樣才能得到這個bash腳本兌現grep電話嗎?

+0

當我運行如上所示的bash腳本,其返回的全部輸出'SVN ST -u〜/包括〜/腳本〜/ htdocs中/幀內〜/ htdocs中/更新 〜/ htdocs中/ sponsor〜/ survey〜/ htdocs/coupon',忽略'| grep「$ QU」' –

+3

確保整個管道全部位於文件的一行;如果在那裏有一個換行符,你必須刪除或轉義它。 – TextGeek

+0

@TextGeek這是問題。納米增加了我沒有注意到的換行符。 –

回答

2

確保整個管道全部位於文件的一行中;如果在那裏有一個換行符,你必須刪除或轉義它。

:)

+1

再次感謝您的幫助 –