我希望能夠確保配置文件的一行包含附加路徑。使用sed重寫文件行
文件中的行看起來是這樣的:
checkedpaths=${myapp.base}/lib
如果沒有$ {} myapp.base/bin中就行了,我想行追加到類似:
checkedpaths=${myapp.base}/lib,${myapp.base}/bin
可能有任何數量的其他路徑上線。
$ {myapp.base}已經在文件中定義,不需要擔心它擴展到什麼。
我試圖用標準的shell腳本命令來做到這一點。 我想用sed,我可以做得更緊湊。
考慮包含'$ {myapp.base}/binary'的行。 –
另外,「。」是一個RE元字符,所以您需要將其轉義,您可能還需要根據awk版本轉義{和}。最後,使用print「」而不是printf「\ n」,並且printf的synposis是'printf fmt,text',所以如果有任何格式化字符潛入「text」,那麼使用printf而不是'printf text'。 –
@EdMorton:謝謝埃德,你的代碼評論總是對我的學習有很大的幫助。 –