QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2522|回复: 8

请教一个问题,如何插入文本至一个文件指定行

[复制链接]
发表于 2005-9-8 11:58:34 | 显示全部楼层 |阅读模式
可能很简单,但我不懂
比如我想用直接用一个命令把“LANG=zh_CN.GB2312"插入一个配置文件的第一行。假定这个文件为/etc/init.d/gdm
发表于 2005-9-8 19:41:06 | 显示全部楼层
自己编个命令吧

mv /etc/init.d/gdm /etc/init.d/gdm.bak
echo LANG=zh_CN.GB2312 >/etc/init.d/gdm
cat /etc/init.d/gdm.bak>>/etc/init.d/gdm
回复

使用道具 举报

发表于 2005-9-8 22:27:09 | 显示全部楼层
please study 'SED'
[code:1][kk@LPE ~]$ cat kk
skfjflfjalkjf
lskjflksj
slkfjlj
[kk@LPE ~]$ sed '1i\99999999999999999999999999' kk
99999999999999999999999999
skfjflfjalkjf
lskjflksj
slkfjlj
[/code:1]
回复

使用道具 举报

发表于 2005-9-8 23:24:32 | 显示全部楼层
回复

使用道具 举报

发表于 2005-9-9 09:20:54 | 显示全部楼层
用vim,yy就可以了
用emacs,M-y
回复

使用道具 举报

 楼主| 发表于 2005-9-9 15:24:56 | 显示全部楼层
yj@debian:~$ cat 1
xxx
yj@debian:~$ sed -e 's/xxx/bar/' 1
bar
yj@debian:~$ cat 1
xxx
好象实质上没修改
回复

使用道具 举报

发表于 2005-9-9 15:40:33 | 显示全部楼层
sed -i 's/xxx/bar/' 1
回复

使用道具 举报

 楼主| 发表于 2005-9-9 15:45:59 | 显示全部楼层
刚刚也看到了,谢谢
回复

使用道具 举报

发表于 2005-9-10 15:09:18 | 显示全部楼层
#!/bin/bash

sed -n "1,$2"p $1>newfile   # $2 是插入行号
read line   # 插入内容
echo  $line>>newfile
insert=$(($2+1))
sed -n "${insert},$"p $1 >>newfile
cp newfile $1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 18:23 , Processed in 0.081405 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表