求助,关于删除各自开头同名的很多文件,怎么写脚本呢 ?

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
paulkg
帖子: 2
注册时间: 2017-02-01 14:44
系统: Linux Mint 17.3

求助,关于删除各自开头同名的很多文件,怎么写脚本呢 ?

#1

帖子 paulkg » 2017-07-31 22:52

图片
如图所示,我想保留一个 12 - Main Thread vs Background Thread.mp4, 然后将其他`Main Thread vs Background Thread`开头的`12 - Main Thread vs Background Thread(X).mp4`删除。

同样对其他有类似情况的13,14,。。。。的所有视频进行上述操作:即:保留一个,删除其他的。

这是否需要脚本中包含如下操作 1.比较文件名字符的前几位的 2.判断相同,则rm 其余部分,保留一个

但是不会具体实现1和2,所以求教大神指导一二。
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求助,关于删除各自开头同名的很多文件,怎么写脚本呢 ?

#2

帖子 poloshiao » 2017-08-01 10:35

使用 rm 關鍵字 搜尋下述文章
1. https://help.ubuntu.com/community/find
find
2. https://blog.miniasp.com/post/2010/08/2 ... otice.aspx
在 Linux 下使用 find 指令查詢目錄與檔案的速查筆記
头像
astolia
论坛版主
帖子: 6422
注册时间: 2008-09-18 13:11

Re: 求助,关于删除各自开头同名的很多文件,怎么写脚本呢 ?

#3

帖子 astolia » 2017-08-01 22:02

如果是想删除因为复制文件导致的不同名但内容一样的文件,源里有现成的工具可用
sudo apt install rdfind
sudo apt install fdupes
sudo apt install jdupes
自己随便选一个吧
rdfind -deleteduplicates true 目标目录
fdupes -d -N 目标目录
jdupes -d -N 目标目录
彼岸花开
帖子: 9
注册时间: 2012-11-15 13:02
系统: Gentoo ~amd64

Re: 求助,关于删除各自开头同名的很多文件,怎么写脚本呢 ?

#4

帖子 彼岸花开 » 2017-08-03 18:32

如果只是要删除重复文件名的话,直接一个命令搞定

代码: 全选

rm *\([0-9]\)*
这样就可以删除所有文件名中有"(X)"的文件了
回复