分页: 1 / 1
如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-24 22:07
由 esolve
我一个文件夹里有很多文件
格式如
m2_rec_plr30_r1.wav
m2_rec_plr140_r2.wav
现在要将下划线 _ 之后所有的 r1 r2改为 s1 s2
也就是变成
m2_rec_plr30_s1.wav
m2_rec_plr140_s2.wav
如何进行啊
另外有一些文件
里面是数字
诸如
1 2
3 4
1.2 1.6
2.4 1.8
.。。。
。。。。
想要每隔两行就相加然后除以2
也就是第一行和第二行各列相加然后除以2
第三行和第四行各列相加然后除以2
以此类推
上面的就变为
2 3
1.8 1.7
.。。。
。。。
谢谢
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-25 1:58
由 astolia
各用一行代码
代码: 全选
rename 's/_r(\d)./_s$1./' *
xargs -n4 < filename | awk '{print ($1+$3)/2" "($2+$4)/2}'
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-25 7:37
由 esolve
只有第一二三四行啊?
后面还有很多行呢。。。
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-25 10:09
由 tusooa
esolve 写了:只有第一二三四行啊?
后面还有很多行呢。。。
xargs -n4 意思是,每4行并为1行,每一行之间用空格分开。
$1 $2 $3 $4对应第多少列,不是行。
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-25 16:10
由 astolia
tusooa 写了:esolve 写了:只有第一二三四行啊?
后面还有很多行呢。。。
xargs -n4 意思是,每4行并为1行,每一行之间用空格分开。
$1 $2 $3 $4对应第多少列,不是行。
非也非也,xargs -n4是将每四个参数放在一行,在他的例子中,每行有两个参数
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-26 2:49
由 esolve
astolia 写了:各用一行代码
代码: 全选
rename 's/_r(\d)./_s$1./' *
为何 (\d) 写成 \(\d\)就不行,另外这个\d是什么意思?
谢谢
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-27 9:53
由 tusooa
esolve 写了:astolia 写了:各用一行代码
代码: 全选
rename 's/_r(\d)./_s$1./' *
为何 (\d) 写成 \(\d\)就不行,另外这个\d是什么意思?
谢谢
晦涩的转义,要它干吗?
prename本来就是perl的。不用像sed那样干吗都\ 了。
alias sed='sed -r'
\d就是匹配数字
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-27 10:15
由 大宝
代码: 全选
sudo apt-get install pyrenamer
Re: 如何批修改文件名,以及如何每两行数字相加
发表于 : 2011-01-27 14:04
由 icmmed
mark一下