我是靠谱客的博主 神勇鲜花,最近开发中收集的这篇文章主要介绍bash中的sed变量替换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Technorati Tags: sed, bash

sed可以在不显式打开文件的情况下修改文件。比如要将第一行替换为k=100,如下命令:sed –i ‘1c/k=100’  textfile.txt. 假如让100变为参数,例如n, 然后让n=100, 200, 300, ….可以写成脚本:

   1:  for n in $(seq 100 100 500)
   2:  do
   3:      sed -e '1c/k=$n' textfile.txt > texfile.out.txt
   4:  done

但是这样是不行,因为在bash中单引号中的算是literal,不能变量代入。但是使用双引号就没有问题了。

   1:  for n in $(seq 100 100 500)
   2:  do
   3:      sed –e "1c/k=$n" textfile.txt > textfile-$n.txt
   4:      #sed –e 1c/k="$n" textfile.txt > textfile-$n.txt
   5:  done

问题解决了。

ref: http://www.linuxquestions.org/questions/programming-9/sed-doesnt-accept-variable-in-bash-script-325935/

最后

以上就是神勇鲜花为你收集整理的bash中的sed变量替换的全部内容,希望文章能够帮你解决bash中的sed变量替换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部