Chinaunix首页 | 论坛 | 博客
  • 博客访问: 91051
  • 博文数量: 42
  • 博客积分: 880
  • 博客等级: 准尉
  • 技术积分: 375
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-03 12:47
个人简介

学习笔记

文章分类

全部博文(42)

文章存档

2017年(2)

2011年(6)

2009年(1)

2007年(7)

2006年(26)

我的朋友

分类:

2006-04-12 14:10:26

#!/bin/bash
# 从文件的某一行之后插入新行
# FILE 为文件名,LINENUM为行号,TEXT为要插入的文本
# Copyleft: cheyo@JMU

showUsage()
{
echo "[Usage]: insert FILE LINENUM TEXT"
echo "# 从文件的某一行之后插入新行"
echo "# FILE 为文件名,LINENUM为行号,TEXT为要插入的文本"
}

if [ $# -lt 3 ]  #少于3个参数,错误!
then showUsage
     exit 1
else
        sed "${2}a\\${3}" $1 > tmpfile
        mv tmpfile $1
fi


感谢softat的网友cheyo

通过sed手册还可以用c \ text进行文本替换;r filename进行其他文件内容附加等等。

sed /^module_/c\kkkk m.c :把m.c文件中以module_开头的行替换为kkkk。

sed s/socket/thinkpad_socket/ batinfo > /tmp/batinfo
mv /tmp/batinfo batinfo    //用thinkpad_socket 代替 batinfo中的socket字符串
阅读(1698) | 评论(0) | 转发(0) |
0

上一篇:[转贴]Unix系列shell程序编写

下一篇:GDB

给主人留下些什么吧!~~