替换字符串在shell脚本中的两个特殊字符之间

时间:2015-02-13 10:16:54

标签: shell replace

我正在尝试将我的shell脚本中的字符串从localhost:7101 / RPAS替换为我的HTML文件中的sound.mojo.com:5555/rpas。

${myDeployment} =<\/td><\td width="0">http://localhost:7101/RPAS<\/td>

我的输出应该是:

${myDeployment} =<\/td><\td width="0">http://sound.mojo.com:5555/rpas<\/td>
  1. 修复的字符串是$ {myDeployment}和&lt; / td&gt;和localhost:7101不是固定的字符串。
  2. http://occurs多次在文档中,上面提到的字符串出现在文档的最后,但不在文档的末尾。
  3. 有没有办法将此命令扩展为仅更改文件中最后一个模式的字符串。
  4. sed -e 's#>http://[^/]*/#>http://sound.mojo.com:5555\/rpas/#' tst.html

    如果有办法,请告诉我。

1 个答案:

答案 0 :(得分:0)

您可以使用此sed命令:

sed 's#>http://[^/]*/#>http://sound.mojo.com:5555#' file

${myDeployment} =<\/td><\td width="0">http://sound.mojo.com:5555RPAS<\/td>