标题: [问题求助] 无指定文件名条件下的多子目录中文件筛选、剔除shell脚本 [打印本页]
作者: hacker85 时间: 2012-6-4 16:19 标题: 无指定文件名条件下的多子目录中文件筛选、剔除shell脚本
http://bbs.bathome.net/viewthrea ... p;extra=&page=1
链接地址处是一个在win平台下需要解决的问题,在11#已经得到了完整的解决。
因为涉及到的文件是deb格式,自然想到了linux平台如果发生此类问题该如何解决的问题,
现将链接发布至此,供大家讨论学习。
注:1#和17#两楼的内容加起来后,是一个完整的项目要求。
作者: seesea 时间: 2012-7-10 17:29
- # 文件夹结构
- [seesea@bathome test]$ ls A/
- atimetool_1.9.6 atimetool_1.9.7 atimetool_1.9.8
- [seesea@bathome test]$ ls A/*/*
- A/atimetool_1.9.6:
- atimetool_1.9.xxxx.deb
- atimetool_1.9.6.deb
-
- A/atimetool_1.9.7:
- atimetool_1.9.xxxx.deb
- atimetool_1.9.7.deb
- atimetool_1.9.6.deb
-
- A/atimetool_1.9.8:
- atimetool_1.9.6.deb
- # 生成重复列表
- [seesea@bathome test]$ for f in A/*/*.deb; do echo ${f##*/}; done | sort | uniq -c | sort -r
- 3 atimetool_1.9.6.deb
- 2 atimetool_1.9.xxxx.deb
- 1 atimetool_1.9.7.deb
- # 生成重复列表->文件
- [seesea@bathome test]$ for f in A/*/*.deb; do echo ${f##*/}; done | sort | uniq -c | sort -r > result.txt
- # 生成操作菜单,根据选择进行操作
- [seesea@bathome test]$ select menu in $(awk '{print $2}' result.txt) "QUIT";do if [ "$menu" = "QUIT" ]; then break; fi; rm -rf A/*/$menu; done
- 1) atimetool_1.9.6.deb
- 2) atimetool_1.9.xxxx.deb
- 3) atimetool_1.9.7.deb
- 4) QUIT
- #? 1
- #? 2
- #? 3
- #? 4
- # 删除完文件的结果
- [seesea@bathome test]$ ls A/atimetool_1.9.*
- A/atimetool_1.9.6:
-
- A/atimetool_1.9.7:
-
- A/atimetool_1.9.8:
复制代码
作者: uxdhoh 时间: 2012-11-13 13:05
谢谢分享哈
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |