java - SED:需要在字符串中使用 "/"才能使用 sed 进行追加

标签 java unix sed

我需要构造包含“/”字符的SED命令。 sed 不认为此命令有效:

添加“约翰/街道”

String cmdtest[] = {"sed","-3 a" + "\\","> john\\/street","/scratch/tmp.txt"};

我还需要知道如何替换包含“/”的字符串。

这就是我需要执行的

cmdtest[] = {"sed","-i","s/ee.jar:/ee.jar:$MY_HOME\\\/lib\\\/jcagent.jar","/scratch/myreg.sh"};

输出应将 myreg.sh 文件中的 {ee.jar} 替换为 {ee.jar:$MY_HOME/lib/jcagent.jar}

最佳答案

您可以在 sed 中使用任何其他字符代替/作为分隔符,然后您可以将/放入字符串中而不进行任何转义,例如这是有效的 sed 命令: sed -e 's#something/#something#' 将用“某事”替换“某事/”

关于java - SED:需要在字符串中使用 "/"才能使用 sed 进行追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32274107/

相关文章:

java - 将一串数字插入矩阵中

java - 如何在 Hibernate 中使用急切实例化?

linux - 如何在不使用 KRB5CCNAME 的情况下在客户端上设置 Kerberos default_ccache_name 属性?

linux - 如何在字符串之前将分配给变量的文本插入到文件中

linux - sed:无效的范围结束

java - Qpid JMS : Receiving Text Message leads to casting exception

java - [更新]如何访问 json 对象中的值?

java - 将参数传递给 Runtime.getRuntime().exec() 并在开头添加一个选项

linux - Unix:递归替换多行文本 block 的最简单方法

android - sed AndroidManifest 版本