我有一個bash腳本來創建一個文本文件,然後用sed命令來處理它。但是,有時會有一行包含多個括號。如何在bash中用多個圓括號過濾文本?
例如:
fileInfo: (2014) (b2b) (analog) (digital) (some-text)
這條線可能是少1套(),但通常至少2到最後我只在提取最後一組()
感興趣fileInfo: (some-text)
如果存在()的設置數量,我可以讓它工作,但不是每個文件都不一樣時。
直到我遇到了2套以上的文件()以下已工作:
if grep -q "textInfo: (.*) (.*)" "$TXT"; then
SG=`egrep textInfo "$TXT" | sed "s/.*) (//"| sed "s/)$//"`
else
SG=`egrep textInfo "$TXT" | sed "s/.* (//"| sed "s/)$//"`
fi
這是相當微不足道的。盡一些努力。你會發現很多這樣的例子。 – devnull
我一直在尋找,並找到了一個合適的例子,我不會發布。 –
@GregKuhn,告訴我們你試過了什麼。 – bedwyr