天天看点

linux下向一个文件中的某行插入数据的做法

sed -i 'ni\x' test.file        表示向test.file文件里的第n行的前面添加x内容

sed -i 'na\x' test.file       表示向test.file文件里的第n行的后面添加x内容

sed -i '/m/i\x' test.file     表示向test.file文件里匹配m字符串的行的前面添加x内容

sed -i '/m/a\x' test.file    表示向test.file文件里匹配m字符串的行的后面添加x内容

-i     表示in front,前面

-a    表示after,后面

比如向a.txt文件的首行添加123456789

# sed -i '1i\123456789' a.txt

比如向a.txt文件的第3行添加hhhhh

# sed -i '3a\hhhhh' a.txt

比如向a.txt文件匹配abcd字符串的行的前面添加66666

# sed -i '/abcd/i\66666' a.txt

比如向a.txt文件匹配1234字符串的行的后面添加hahaha

# sed -i '/1234/a\hahaha' a.txt

比如向/etc/puppet/puppet.conf文件中的第2行的前面添加" server=puppet01.test.cn"内容

然后再向第3行添加" runinterval = 600"内容

# /bin/sed -i '2i\ server=puppet01.test.cn' /etc/puppet/puppet.conf

# /bin/sed -i '3i\ runinterval = 600' /etc/puppet/puppet.conf

------------------------------------------------------------------------------------------------------------------------

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

<code>取最后一个字符:</code><code>awk</code> <code>'{print substr($0,length())}'</code> <code>filename</code>

<code>[root@localhost ~]</code><code># cat a</code>

<code>3G</code>

<code>32G</code>

<code>123G</code>

<code>2348G</code>

<code>123131G</code>

<code>123123123123123G</code>

<code>[root@localhost ~]</code><code># awk '{print substr($0,length())}' a</code>

<code>G</code>

<code>[root@localhost ~]</code><code># awk -F"G" '{print $1}' a</code>

<code>3</code>

<code>32</code>

<code>123</code>

<code>2348</code>

<code>123131</code>

<code>123123123123123</code>

***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************

本文转自散尽浮华博客园博客,原文链接:http://www.cnblogs.com/kevingrace/p/7273241.html,如需转载请自行联系原作者

继续阅读