用sed替换substring

Yan*_*rit 5 shell sed sh

我有一个像这样的字符串:

test:blabla
Run Code Online (Sandbox Code Playgroud)

而对于sed,我想用':'替换之后的东西.

我可以设法替换一个单词,但不能替换':'之后的单词.我在互联网上搜索了答案,但我没有找到任何东西.

有帮助吗?

Chr*_*our 11

使用: sed 's/:.*/:replaceword/'

$ echo test:blabla | sed 's/:.*/:replaceword/'
test:replaceword
Run Code Online (Sandbox Code Playgroud)

或者对于test test:blabla test您只想替换:使用后的单词的情况 sed 's/:[^ ]*/:replaceword/':

$ echo "test test:blabla test" | sed 's/:[^ ]*/:replaceword/'
test test:replaceword test

# Use the g flag for multiple matches on a line
$ echo "test test:blabla test test:blah2" | sed 's/:[^ ]*/:replaceword/g'
test test:replaceword test test:replaceword
Run Code Online (Sandbox Code Playgroud)