- 方法一(sed):
参数s :取代,可以直接进行取代的工作。通常这个 s 的动作可以搭配正规表示法
sed 's/要被取代的字串/新的字串/g'
例如:分割7.8.9.10替换成网关地址7.8.9.1
a=7.8.9.10
echo $a | sed "s/[^.]*$/1/g"
s 表示取代
[^.]* 表示取代任何不是’.'的元素
$ 表示到文本结尾
- 方法二(awk):
awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file
[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=value
$1 指指定分隔符后,第一个字段,$3第三个字段, \t是制表符
一个或多个连续的空格或制表符看做一个定界符,即多个空格看做一个空格
echo $a |awk -F '.' '{print $1"."$2"."$3"."1}'
参考文章: