我想在bash的变量赋值行中使用正则表达式
e.g。
oldip="14\.130\.31\.172"
oldip_a="14.130.31.172" //How to use regex on this line.
如何使用正则表达式来解决$ oldip中的所有'\'?然后将新值分配给$ oldip_a。
你有什么想法吗?
答案 0 :(得分:4)
我相信你想使用这样的字符串替换:
oldip_a=${oldip//\\/}
或类似的东西......当然总有一些战斗逃避反斜杠!
一个更明显的例子:
some_variable=${some_other_variable//replaceEachOfThese/withThis}
在此页面上搜索“替换所有匹配项”:
http://tldp.org/LDP/abs/html/string-manipulation.html
答案 1 :(得分:2)
以下是您可以这样做的方法:
oldip="14\.130\.31\.172"
oldip_a=`echo $oldip | sed 's/[\]//g'`
echo $oldip_a
<强>输出强>
14.130.31.172