我在bash下面的代碼:如何搜索文件並在ruby中匹配後插入字符串?
sed \"s/\:root\:/\:root-$(hostname)\:/g\" /etc/passwd
導致:
root:x:0:0:root-myhostname.domain.tld:/root:/bin/bash
我試圖複製在Ruby中相同的行爲。有人可以幫幫我嗎?
我在bash下面的代碼:如何搜索文件並在ruby中匹配後插入字符串?
sed \"s/\:root\:/\:root-$(hostname)\:/g\" /etc/passwd
導致:
root:x:0:0:root-myhostname.domain.tld:/root:/bin/bash
我試圖複製在Ruby中相同的行爲。有人可以幫幫我嗎?
你可以只使用gsub
:
longString.gsub(stringToFind,stringToFind+stringToAdd)
你也可以運行在慶典類似於Ruby:
`sed \"s/\:root\:/\:root-$(hostname)\:/g\" /etc/passwd`
您可能也有興趣this gem。
感謝您的建議。由於我在bash中的正則表達式的複雜性,我無法通過gsub獲得正確的語法。你介意告訴我如何複製我在bash中用ruby gsub做的事情嗎? –
我並不擅長這種事情,但今天晚些時候我會嘗試一下。 – thesecretmaster
如果你有一些正則表達式,請發佈你有什麼。 – thesecretmaster
你可以發佈一些'/ etc/passwd'的示例內容嗎? – thesecretmaster