[已解决][问题]如何批量重命名

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
tgchen
帖子: 25
注册时间: 2008-04-21 15:55

[已解决][问题]如何批量重命名

#1

帖子 tgchen » 2008-04-28 20:24

今天在网上下了个软件,解压后所有的文件名后都加了“;1",所以不能make。我是菜鸟,自己试了好久也没成功,如果用SHELL解决该如何编写呢?
上次由 tgchen 在 2008-04-29 12:19,总共编辑 1 次。
头像
tgchen
帖子: 25
注册时间: 2008-04-21 15:55

#2

帖子 tgchen » 2008-04-28 20:46

自己解决了!!!!!!!!
受到<如何将一个文件夹下的所有文件都加上".txt"后缀>的启发

代码: 全选

a=$(ls *';1' |cut -d ';' -f1)
for b in $a;do mv ${b}\;1 $b;done
thword
帖子: 119
注册时间: 2007-04-09 12:19

#3

帖子 thword » 2008-04-28 21:56

for i in *;do mv $i ${i%;1};done
也可以这样
虽然晚了点
头像
tgchen
帖子: 25
注册时间: 2008-04-21 15:55

#4

帖子 tgchen » 2008-04-28 22:08

thword 写了:
for i in *;do mv $i ${i%;1};done
也可以这样
虽然晚了点
原理方法一样,是但你的这个精简多了,谢了。
wenhepku
帖子: 2
注册时间: 2008-04-28 21:58

#5

帖子 wenhepku » 2008-04-29 10:23

其实这类工作用perl做会非常优雅!
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#6

帖子 iblicf » 2008-04-29 10:35

rename ? 还有一些 gui 的工具,支持正则,比如 thunar ,
头像
laborer
帖子: 1016
注册时间: 2005-10-25 11:15
联系:

#7

帖子 laborer » 2008-04-29 10:39

代码: 全选

rename 's/;1$//' *
hreiser@oakland:~$ killall -9 wife
police@oakland:~$ sudo find / -user hreiser
court@oakland:~$ sudo mv /home/hreiser /jail/
court@oakland:~$ sudo usermod -d /jail/hreiser -s "/usr/sbin/chroot /jail/" hreiser
头像
highwind
帖子: 1362
注册时间: 2008-09-05 23:31
系统: LinuxMint17

Re: [已解决][问题]如何批量重命名

#8

帖子 highwind » 2009-11-10 19:19

pyRenamer比较小一些,不过呢,我只想随便改成1(1),1(2),1(3)这样的话,还是能集成到nautilus比较好些。
头像
snowtown86
帖子: 1239
注册时间: 2009-06-13 16:01

Re: [已解决][问题]如何批量重命名

#9

帖子 snowtown86 » 2009-11-10 19:21

学了 :em01
回复