当sed遇到路径怎么办?

浏览:
字体:
发布时间:2013-12-13 14:31:27
来源:

我们知道一般的sed文本替换命令格式如下:

 sed -e "s/origin/new/g"  input.txt

但当我们要替换的东西或替换后的东西不再像origin或new这样,而是一个路径时怎么办呢?

答案是转义!!

例如我有以下input.txt的文本 

1. set path VARPATH running workspace.2. runing this program  
我想把里面的VARPATH替换为/var/tmp/cloud,用shell脚本实现如下:

 !/bin/sh                                                                                                                         
###########################################################
# sedpath.sh
#  this script is used to deal with sed replace with path
###########################################################

VARPATH="/var/tmp/cloud"
VARPATHSED=$(echo ${VARPATH} |sed -e 's/////////g' )
echo "origin content:"
echo "-----------------"
cat input.txt
echo "-----------------"
echo "VARPATH=${VARPATH}"
echo "VARPATHSED=${VARPATHSED}"

cat input.txt |sed -e "s/VARPATH/${VARPATHSED}/g" > output.txt

echo "the result content:"
echo "-----------------"
cat output.txt
echo "-----------------"

运行结果如下:

 /

>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();