0
我有2500 .txt
文件,其中只有當以下開始和結束標記之間發生他們,我想通過replace
所有+do+
出現-do-
代替從終端:我可以搜索/多個.txt文件的具體情況
<X> </X>, <O> </O>, <&> </&>, <del> </del>, <+> </+>, <*> </*>
我已經找到了如何查找/與此代碼的sed替換:
sed -i '' 's/-do-/+do+/g' *.txt
但我wonderi如果有任何方法可以爲此添加這樣的條件。
非常感謝!
感謝您的回答。我可能是錯的(我不完全確定如何讀取代碼,並且在運行時我收到以下錯誤消息: 'sed:1:「S1A-001.txt」:無效的命令代碼S'),但我認爲我有點。實際上在標籤「」和「 」之間有一大堆文本,在本文中,我想用+ do +替換所有出現的-do-。任何方式可以調整?非常感謝。 –
對此的快速修補將是'sed -i's/\(<[X]>。* \) - do - \(。* <\/[X]> \)/ \ 1 + do + \ 2/g'* .txt'。你應該熟悉一下正則表達式,這就是所有這些巨型超級巨人所稱的:-) –
會做:-)我仍然有一些問題,但是:這應該取代幾千個事件,但只取代2,並且只能取代2真的很短的比賽。我認爲這可能是因爲換行符不匹配...所以我嘗試了這一點(和其他一些可能性):'sed -i''s/\(<[X]> [\ n |。] * \) - do - \([\ n |。] * <\/[X]> \)/ \ 1 + do + \ 2/g'* .txt'但它仍然不起作用:( –