sed –i "# $Comfilename#d" filename.list 于是只能自己手工先改写变量 $Comfilename="/home/evan/sandbox/Main/" Tempname=` echo $Comfilename | sed 's#\/#\\\/#g'` (这里把反单引号执行的结果给临时变量,同样的方法可以改写其他需要转义的符号。) sed –i "# $ Tempname #d" filename.lis...
我也给个思路吧 —— 用sed根据地址范围截取文件内容,用Here documents方法添加新的多行内容,然后重组文件。具体步骤如下: 1)截取test.xml文件起始行到行,保存到tmp文件; 2)将要添加的内容根据变量值展开,附加写入tmp文件; 3)截取test.x.
shell脚本之sed使用---替换、变量、转义字符 http://blog.csdn.net/wangcg123/article/details/50667883
1、转义字符“\” (在回车的上面),是为了将【字符2】的“ / ” 进行转义; 2、原本字符 “ / ”,表示目录的意思,是被【字符1】转义的字符,【字符1】与【字符2】组合在一起 “ \ / ” 放在sed的第一组# #内,对照【sed 's#原字符#替换后字符#g' 】,也就是匹配原句中的两个 “ / ” 3/4/5...
网上提出的一种方法是将sed里表示替换用的s后面的表示分隔用的字符换成别的变量里没有的字符这样就相当于变量里没有要转义的字符了。 如: sed –i "s# $Comfilename#/Root/#" filename.list 这是一个好办法。但很不幸我需要的是删除“d”不是替换“s“。当我把同样的方法用于删除时似乎没有起到作用:...
shell脚本之sed使⽤---替换、变量、转义字符 sed替换的基本语法为:---s后⾯跟的是分隔符,原字符串可使⽤.*这种正则表达式进⾏整⾏替换 sed 's/原字符串/替换字符串/'单引号⾥⾯,s表⽰替换,三根斜线中间是替换的样式,特殊字符需要使⽤反斜线”\”进⾏转义,但是单引号”‘”是没有办法⽤...
shell脚本之sed使⽤---替换、变量、转义字符 sed替换的基本语法为:---s后⾯跟的是分隔符,原字符串可使⽤.*这种正则表达式进⾏整⾏替换 sed's/原字符串/替换字符串/'单引号⾥⾯,s表⽰替换,三根斜线中间是替换的样式,特殊字符需要使⽤反斜线”\”进⾏转义,但是单引号”‘”是没有办法⽤...
网上提出的一种方法是将sed里表示替换用的s后面的表示分隔用的字符换成别的变量里没有的字符这样就相当于变量里没有要转义的字符了。 如: sed –i "s# $Comfilename#/Root/#" filename.list 这是一个好办法。但很不幸我需要的是删除“d”不是替换“s“。当我把同样的方法用于删除时似乎没有起到作用:...
sed–i"# $Comfilename#d"filename.list 于是只能自己手工先改写变量 $Comfilename="/home/evan/sandbox/Main/"Tempname=`echo$Comfilename |sed's#\/#\\\/#g'` (这里把反单引号执行的结果给临时变量,同样的方法可以改写其他需要转义的符号。)sed–i"# $ Tempname #d"filename.list...
sed–i"# $Comfilename#d"filename.list 于是只能自己手工先改写变量 $Comfilename="/home/evan/sandbox/Main/"Tempname=`echo$Comfilename |sed's#\/#\\\/#g'` (这里把反单引号执行的结果给临时变量,同样的方法可以改写其他需要转义的符号。)sed–i"# $ Tempname #d"filename.list...