设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 综合讨论区 —— LinuxSir.cn
›
shell进阶应用、shell编程
›
linux下删除大量文件???求助
返回列表
查看:
1688
|
回复:
3
linux下删除大量文件???求助
[复制链接]
06by
06by
当前离线
积分
1
IP卡
狗仔卡
发表于 2008-1-26 14:07:11
|
显示全部楼层
|
阅读模式
大家好!
小弟有个问题需要大家帮个忙!
我们公司是做网站的!最近发现附件的目录体积极其硕大,有29G。想清理一下,因为里边没用的文件和有用的文件放在同一个目录,我们可以通过数据库查找到有用的文件的名字,然后通过筛选,把没用的文件名字找出来了,然后小弟编了一个脚本!要删除这些文件,发现在linux下文件查找并不像windows下,有好多文件都想这样:
空格00空格.jpg
?????????.jpg
(?????).jpg
结果发现这种文件清除不了,清除效率极低!
最后我有查了一下,发现 ll -ih命令可以把文件的“inode” 号找出来,而且这个号每个文件唯一。
我就想通过这个方法再加上数据库查找的列表,把没用的文件的“inode”号找出来。然后反向找到那个文件,删除。但是小弟在linux下编写脚本的能力不太好,希望大家能帮一下忙!!!
补充一下!我这个目录没有文件“硬链接”!!
在此不胜感谢!!!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
springwind426
springwind426
当前离线
积分
1779
IP卡
狗仔卡
发表于 2008-1-26 16:33:11
|
显示全部楼层
rm "???.jpg" 就可以删除???.jpg
也就是在文件名的两边加双引号,就可以删除特殊文件名了。
比如
mysql获取的数据 | while read file
do
rm -f "$file"
done
复制代码
回复
支持
反对
使用道具
举报
显身卡
ErrSta
ErrSta
当前离线
积分
11
IP卡
狗仔卡
发表于 2008-1-29 11:37:05
|
显示全部楼层
我是用的hp-ux来实验的,首先我把带有中文名字的文件全部用
echo *.jpg > Del_FileName.txt
然后用下面的语句删除
more Del_FileName.txt|while read i
do
rm $i
done
还有就是我发现rm "???.jpg" 不可以删除的,至少在我的系统上是做不了的,可能是操作系统原因吧,我知道的就这么多了,欢迎指正
回复
支持
反对
使用道具
举报
显身卡
ErrSta
ErrSta
当前离线
积分
11
IP卡
狗仔卡
发表于 2008-1-29 11:40:27
|
显示全部楼层
纠正下,没有看清你的意思,你把数据库中没有用的名字的文件的名称导入到Del_FileName.txt就可以了,不用echo *.jpg > Del_FileName.txt了,理解错误,不好意思!
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
硬件设备 Linux 驱动
Redhat/Fedora/CentOS Linux
服务器架设、应用、维护
开源软件专题讨论
LFS(LinuxfromScratch)
Archlinux讨论区
LinuxSir 论坛管理
Debian Linux
SuSE Linux
Linux 基础讨论区(新手速成)
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表