sed怎么每50行插入一句

sh/bash/dash/ksh/zsh等Shell脚本
回复
bfdxw
帖子: 9
注册时间: 2009-09-19 9:13

sed怎么每50行插入一句

#1

帖子 bfdxw » 2009-09-19 9:18

比如1到1000行
每50行插入一句话
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#2

帖子 O_O_BOT » 2009-09-19 9:28

irc <fvw> say: man sed -> 50~50i\
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#3

帖子 O_O_BOT » 2009-09-19 9:29

irc <fudan> say: use awk
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#4

帖子 O_O_BOT » 2009-09-19 9:32

awk NR%50 也可以
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
bfdxw
帖子: 9
注册时间: 2009-09-19 9:13

Re: sed怎么每50行插入一句

#5

帖子 bfdxw » 2009-09-19 9:37

给个例子了 :em06
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#6

帖子 O_O_BOT » 2009-09-19 9:55

awk '{print;} NR%50 == 0 {print "test"}' file
sed '51~50i\
"test"' file
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
bfdxw
帖子: 9
注册时间: 2009-09-19 9:13

Re: sed怎么每50行插入一句

#7

帖子 bfdxw » 2009-09-19 10:19

还是有点问题
不过非常感谢
头像
darkfish
帖子: 90
注册时间: 2009-09-18 10:03
来自: 北京
联系:

Re: sed怎么每50行插入一句

#8

帖子 darkfish » 2009-09-19 14:59

代码: 全选

awk '{if(NR%50==0) print $1,"something"} {if(NR%50!=0) print $1}' every50.txt
假设文本名字叫every50,这样的话可以在每50行本行添加一个something字符串。 :em01 :em01
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#9

帖子 O_O_BOT » 2009-09-19 15:03

darkfish 写了:

代码: 全选

awk '{if(NR%50==0) print $1,"something"} {if(NR%50!=0) print $1}' every50.txt
假设文本名字叫every50,这样的话可以在每50行本行添加一个something字符串。 :em01 :em01
$1不对 用$0要 而且这样写不简洁
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
头像
darkfish
帖子: 90
注册时间: 2009-09-18 10:03
来自: 北京
联系:

Re: sed怎么每50行插入一句

#10

帖子 darkfish » 2009-09-19 15:13

O_O_BOT 写了:
darkfish 写了:

代码: 全选

awk '{if(NR%50==0) print $1,"something"} {if(NR%50!=0) print $1}' every50.txt
假设文本名字叫every50,这样的话可以在每50行本行添加一个something字符串。 :em01 :em01
$1不对 用$0要 而且这样写不简洁
:em06 :em06 的确。后面那个应该是print $0}
头像
darkfish
帖子: 90
注册时间: 2009-09-18 10:03
来自: 北京
联系:

Re: sed怎么每50行插入一句

#11

帖子 darkfish » 2009-09-19 15:30

O_O_BOT 写了:awk '{print;} NR%50 == 0 {print "test"}' file
sed '51~50i\
"test"' file
sed 里面的50~51是什么意思??在网上搜了未果……
PS:第一个很简洁啊……但为什么LZ还说有点问题……
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: sed怎么每50行插入一句

#12

帖子 O_O_BOT » 2009-09-19 15:34

sed -> man

都是 添加在不同行的。 具体看他要什么
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
头像
darkfish
帖子: 90
注册时间: 2009-09-18 10:03
来自: 北京
联系:

Re: sed怎么每50行插入一句

#13

帖子 darkfish » 2009-09-19 16:28

O_O_BOT 写了:sed -> man

都是 添加在不同行的。 具体看他要什么
查到了 :em06 :em06
sed first~step…………
居然在man中查到了。我还以为这么复杂的东西,非要教程才学得会……学习了 :em06 :em06
头像
lilydjwg
论坛版主
帖子: 4249
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: sed怎么每50行插入一句

#14

帖子 lilydjwg » 2009-09-19 23:21

darkfish 写了:
O_O_BOT 写了: 居然在man中查到了。我还以为这么复杂的东西,非要教程才学得会……学习了 :em06 :em06
man 是最好的教程,(只可惜我懒得看e文,所以直到现在还不会 awk :em06
bfdxw
帖子: 9
注册时间: 2009-09-19 9:13

Re: sed怎么每50行插入一句

#15

帖子 bfdxw » 2009-09-20 13:39

谢谢大家
解决了已经
回复