巧用sed做字符串替换命令: sed -i 's#WORKHOME=/home/#WORKHOME=/home/mapdir/map#g' 上面的命令把WORKHOME=/home/替换为WORKHOME=/home/mapdir/map sed -i 's#-s -f#-s#g' 或者 sed -i 's/-s/-s -f/g' 把-s 替换为 -s -f
sed替换命令与转换命令 替换命令 语法格式: [address]s/old/new/flags flags如下: n:1~512之间的数字,表示对本模式中指定的匹配行中出现第n次的情况时进行替换,其它行不进行替换。 如sed 's/unix/UNIX/2' sed.txt 替换每行中第个unix字符,将其转换成大写UNIX。 g:表示对全局进行替换。 p:打印模式空间的内容。即打印匹配行的内容。 w file:表示匹配行的内容写到另一个文件中。 注意:定界符可以使用多种,如...
本帖最后由 husong0811 于 2014-10-11 21:59 编辑 如图 我用sed -i 's/*/<1>/' file 命令进行替换时,是‘<'开始替换的,如果我想替换之后是’>'在*那列该怎么操作?
如题,使用sed将/etc/inittab之18行id:5:initdefault:替换成id:$a6:initdefault形式,即将运行模式数字5使用变量替换,以满足具体要求,但是尝试很久却无果, sed -i 's/id:5:initdefault:/id:"echo $a6":initdefault:/g' /etc/inittab不可以,怀疑是转义符号使用不正确导致,去掉""也不行,不知道将数字替换成变量的要求是否能实现?如果能实现,应该如何书写此命令实现呢?应该如何正确的转义呢?谢谢大侠的解答~~
源文件是如下格式: testabc @include(/abc/dev/ghi/lmn.js) @include(/abc/dev/ghi/xyz.js) ... testdef 要将js的文件内容替换进去,变成: testabc afafdf ajfdsjf afkljafkjakfj jlakfjklaf jjf afasf afdsf fjlkfja; asdfi9232u90 ewrl testdef 就将有@include 的括号里的文件用系统命令输出"cat /abc/dev/ghi/lmn.js" 替换。 这个怎么搞?