Shell:检索字符后的字符串并用另一个字符替换它
在我詹金斯的工作中, 我正在使用一个环境变量:$SVN\u URL,其中:Shell:检索字符后的字符串并用另一个字符替换它,shell,svn,Shell,Svn,在我詹金斯的工作中, 我正在使用一个环境变量:$SVN\u URL,其中: $SVN_URL=http://svn.local:8080/svn/project1/trunk 我将在下一步中执行此shell命令: svn copy http://svn.local:8080/svn/project1/trunk http://svn.local:8080/svn/project1/tags/v$RELEASE_VERSION \ -m "Tagging the v$REL
$SVN_URL=http://svn.local:8080/svn/project1/trunk
我将在下一步中执行此shell命令:
svn copy http://svn.local:8080/svn/project1/trunk http://svn.local:8080/svn/project1/tags/v$RELEASE_VERSION \
-m "Tagging the v$RELEASE_VERSION release"
此命令可以替换为以下内容(使用我的$SVN_URL):
但我仍然无法对第二部分进行优化,即:
http://svn.local:8080/svn/project1/tags/v$RELEASE_VERSION
因此,我想使用我的$SVN_URL来实现它
因此,请继续:
http://svn.local:8080/svn/project1/trunk/
/trunk/
/tag/
svn copy $SVN_URL "$(echo $SVN_URL| sed 's/trunk/tags/')"/v$RELEASE_VERSION \
-m "Tagging the v$RELEASE_VERSION release"
您可以使用
sed
该问题的许多答案的可能副本,这些答案可移植到其他POSIX shell。这里根本没有标记shell,所以这个问题实际上是Bash问题的可能性不大。不管怎样,这都是一个常见的副本,而且内容太广泛,因为OP在发布之前似乎没有做过任何研究。
svn copy $SVN_URL "$(echo $SVN_URL| sed 's/trunk/tags/')"/v$RELEASE_VERSION \
-m "Tagging the v$RELEASE_VERSION release"