免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5388 | 回复: 13
打印 上一主题 下一主题

shell脚本怎么删除当前目录下最大的那个文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-30 15:02 |只看该作者 |倒序浏览
本帖最后由 jujumao1202 于 2012-05-30 16:32 编辑

当空间剩余100M时,就删除当前目录下最大的那个文件,请问脚本怎么实现呢

晕,计划有变,要删除最old的文件

论坛徽章:
0
2 [报告]
发表于 2012-05-30 15:29 |只看该作者
本帖最后由 jils2013 于 2012-05-30 15:31 编辑
  1. [root@localhost shell]# find /opt -type f -exec du -s {} \+ | awk '$1>max{max=$1;file=$2}END{system("ls -lrt "file)}'
  2. -rw-r--r-- 1 root root 523980800 Apr 23 23:44 /opt/Linux_x86_32bit_WAS61.tar.gz
复制代码
分区小于100m那个条件自己加吧,要删除的话把ls -lrt 换成 rm -rf 就好

这种脚本很不安全,不建议用,列出来自己手动删吧,如果是日志文件的话,这样很多时候也会不能释放空间。

论坛徽章:
0
3 [报告]
发表于 2012-05-30 15:35 |只看该作者
回复 1# jujumao1202

  1.     rm -rf `ls -S | awk 'NR==1'`
  2.    
复制代码

论坛徽章:
0
4 [报告]
发表于 2012-05-30 15:40 |只看该作者
daniel_kohler 发表于 2012-05-30 15:35
回复 1# jujumao1202


楼主的意思貌似是一个分区那种的,这样可以处理当前目录下

论坛徽章:
0
5 [报告]
发表于 2012-05-30 15:42 |只看该作者
就是日志文件呢,有时候打太多,监控下空间

论坛徽章:
0
6 [报告]
发表于 2012-05-30 15:43 |只看该作者
回复 1# jujumao1202

删除当前目录下最大文件
  1. ls -l | sort -nr -k4  | awk '{if(NR==2)print $9}' | xargs rm
复制代码
判断的自己加吧

论坛徽章:
0
7 [报告]
发表于 2012-05-30 15:43 |只看该作者
是只有一个分区
回复 4# jils2013


   

论坛徽章:
0
8 [报告]
发表于 2012-05-30 15:45 |只看该作者
建议处理日志文件,直接用 > 符号,这种一般都能马上释放空间;

rm -rf logfile 很多时候都不能释放空间;

赶上hpux这种没有 lsof,fuser 的几个参数功能有限的 平台,找都找不到哪个进程在写文件就崩溃了

论坛徽章:
0
9
发表于 2012-05-30 15:48
这个我试了下,貌似是第二个最大的:wink:

回复 6# sandao381


   

论坛徽章:
0
10 [报告]
发表于 2012-05-30 15:56 |只看该作者
多谢bingo
回复 3# daniel_kohler


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP