sed “s/查找字段/替換字段/g”
echo helloworld|sed ‘s/hello/world/g’
sed 替換字符串以變量形式
1、
sed命令使用雙引號的情況下,可以使用$var(變量)直接引用:
echo | sed "s/^/$RANDOM.rmvb_/g"
13562.rmvb_
2、sed命令使用單引號的情況下,可以使用'"$var"'引用(單引號,然后雙引號,變量):
echo | sed 's/^/'"$RANDOM"'.rmvb_/g'
2442.rmvb_
sed中執行外部命令。
1、sed命令使用單引號的情況下使用'`shell command`'或者'$(shell command)'引用命令執行的結果:
echo | sed 's/^/'`echo $RANDOM`'.rmvb_/g'
7700.rmvb_# 結果
# 上面的命令使用了舊式的命令替換,也可以采用新式的命令替換方法,如下:
echo | sed 's/^/'$(echo $RANDOM)'.rmvb_/g'
13856.rmvb_# 結果
# 下面例子取用當前日期作為結果的一部分,如下:
echo | sed 's/^/'$(date +"%Y%m%d")'.rmvb_/g'
20130401.rmvb_ # 結果
2、sed命令中使用雙引號的情況下,直接`shell command`或者$(shell command)引用命令執行。
echo | sed "s/^/$(date +"%Y%m%d").rmvb_/g"
20130401.rmvb_# 結果
# 使用環境變量$RANDOM以及舊式命令替換的例子:
echo | sed "s/^/`echo $RANDOM`.rmvb_/g"
29484.rmvb_# 結果
總結一下
在sed語句里面,變量替換或者執行shell命令,雙引號比單引號少繞一些彎子;所以,sed和變量的關鍵詞搜索的結果,眾多都寫上替換單引號為雙引號