由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Linux版 - how to change to number in multiple strings of a file?
相关主题
vim 里面进入visual模式后选择然后进入command line后的那个 '<,'> 是什么意思?考, 这个东西不错啊, 网卡带Linux 可以当下载服务器
Perl问题求助Anyone played this game?
problem with "\"Java里如何把一个webservice的返回读到一个String里? (转载)
how to change line color of "vi" after "set nu"改密码的问题
Linux server was hacked? Help!sed question: add a new line for every 2 chars in a string
[合集] ubuntu今天又给我颜色看看了,nndc程序用g++编译需要改动么?
文件删除【求】哪里能找到STL的测试程序
Ubuntu中文冒号求教 shell script
相关话题的讨论汇总
话题: change话题: file话题: strings话题: sed话题: number
进入Linux版参与讨论
1 (共1页)
P********e
发帖数: 544
1
Sorry, no Chinese input here.
I have a text file containing couple hundreds of the record, such as the
block at the end of this post.
For every line starting with "rs", I need to change the number, "89", to "
159". Similarly, for every line starting
with label, I also need change "89" to "159". the commond
sed 's/G89N/G159N/g'
can change them individually. But the problem is I have more than 300 lines
that needs change, and I have
about 10 such files to work with.
Any better way to finish this?
r****t
发帖数: 10904
2
你这个不是在改原始数据吧?
sed 应该类似, 这个是 vim 的做法:
除了第一个冒号,你吧冒号换成 / 也行的。
lines
P********e
发帖数: 544
3
Here is perl code for this purpose.
perl -p -i -e 's#(label\s[A-Z])(\d{1,3})([A-Z])#"$1".($2+60)."$3"#ge; s#(rs\
s|[A-Z])(\d{1,3})(|[A-Z]|\s|[A-
Z])(\d{1,3})(|[A-Z]|)#"$1".($2+60)."$3".($4+60)."$5"#ge' file_name_goes_here
.dat
BTW: this is not raw data.

【在 r****t 的大作中提到】
: 你这个不是在改原始数据吧?
: sed 应该类似, 这个是 vim 的做法:
: 除了第一个冒号,你吧冒号换成 / 也行的。
: lines

c*m
发帖数: 1114
4
这个哪里有这么复杂,
假设是以rs开头的行吧89换成159可以用
sed '/^rs/s/89/159/g'
其他依次类推。好久不用sed,具体用法记不清了,自己查查sed的男人页。

rs\
here

【在 P********e 的大作中提到】
: Here is perl code for this purpose.
: perl -p -i -e 's#(label\s[A-Z])(\d{1,3})([A-Z])#"$1".($2+60)."$3"#ge; s#(rs\
: s|[A-Z])(\d{1,3})(|[A-Z]|\s|[A-
: Z])(\d{1,3})(|[A-Z]|)#"$1".($2+60)."$3".($4+60)."$5"#ge' file_name_goes_here
: .dat
: BTW: this is not raw data.

P********e
发帖数: 544
5
I have more than 360 lines to change for all 10 files.

【在 c*m 的大作中提到】
: 这个哪里有这么复杂,
: 假设是以rs开头的行吧89换成159可以用
: sed '/^rs/s/89/159/g'
: 其他依次类推。好久不用sed,具体用法记不清了,自己查查sed的男人页。
:
: rs\
: here

E*U
发帖数: 2028
6
man, did you ever try "sed"?
it works line by line
which means it works for every line

【在 P********e 的大作中提到】
: I have more than 360 lines to change for all 10 files.
P********e
发帖数: 544
7
Unless sed can automatically run through 89, 90, 91, 92 ...... 399.

【在 E*U 的大作中提到】
: man, did you ever try "sed"?
: it works line by line
: which means it works for every line

1 (共1页)
进入Linux版参与讨论
相关主题
求教 shell scriptLinux server was hacked? Help!
为什么bash file执行的结果与直接在命令行执行的结果不一样[合集] ubuntu今天又给我颜色看看了,nnd
Firefox这不是掩耳盗铃+脱裤子放屁吗?文件删除
好冷清啊,大家讨论linux都去哪儿啊?Ubuntu中文冒号
vim 里面进入visual模式后选择然后进入command line后的那个 '<,'> 是什么意思?考, 这个东西不错啊, 网卡带Linux 可以当下载服务器
Perl问题求助Anyone played this game?
problem with "\"Java里如何把一个webservice的返回读到一个String里? (转载)
how to change line color of "vi" after "set nu"改密码的问题
相关话题的讨论汇总
话题: change话题: file话题: strings话题: sed话题: number