当前位置:  技术问答>linux和unix

想问一个shell有关的问题

    来源: 互联网  发布时间:2016-09-07

    本文导语:  想实现如下功能   当某个文件夹的大小,达到系统磁盘总量的90%时,就删除这个文件夹里的所有文件 用shell实现,麻烦各位了哈~ | #!/bin/bash testdir=DIR if [ ! -d ${testdir} ] then   echo "no th...

想实现如下功能

  当某个文件夹的大小,达到系统磁盘总量的90%时,就删除这个文件夹里的所有文件

用shell实现,麻烦各位了哈~

|
#!/bin/bash

testdir=DIR

if [ ! -d ${testdir} ]
then
  echo "no the dir "
fi

sizedir=`du -sh ${testdir} | awk -F 'G' '{print $1}'`

if [ ${sizedir} > 60 ]
then
   cd ${testdir}
   rm -rf *
fi

exit 0

完了,把这个shell加到crontab中就可以啦

|

250G 就是超过225G就删除了?
试试我这个 把第一行/your/path改成实际path 千万小心哦
你可以先测试一下 先把rm -rf那一句换成一句普通的输出 比如echo "i will rm"
再改回去真正执行删除

#!/bin/sh
target_path=/your/path
dir_size=`du -skh $target_path | grep -o -E '([0-9]{1,})G' | cut -d'G' -f1`
if [ x$dir_size != x ] && [ $dir_size -gt 225 ];then
        rm -rf $target_path
fi

|

不会吧 我这就好用啊  改改

#!/bin/sh
target_path=/your/path
dir_size=`du -skh $target_path | grep -o -E '([0-9]{1,})G' | cut -d'G' -f1`
if [ "$dir_size" != "" ];then
        test $dir_size -gt 225 && rm -rf $target_path
fi

|

不知道你啥操作系统,我写个aix下面的shell你试试吧
入参为你需要检查的目录

#!/bin/ksh
path_name=$1
path_size=`du -sk $path_name | awk '{ print $1 }'`
echo "path size is : $path_size [k]"
path_sizeM=`expr $path_size / 1024`
echo "path size is : $path_sizeM [m]"
path_sizeG=`expr $path_sizeM / 1024`
echo "path size is : $path_sizeG [g]"
if [ $path_sizeG -gt 225 ]
then
    rm -rf $1/*
    echo "$1 file and path delete !"
else
    echo "$1 check ok!"
fi;

    
 
 

您可能感兴趣的文章:

  • 有关裁减内核及shell命令的问题
  • 有关shell返回值
  • 请求有关solaris和hpux机器如何修改shell命令的长度
  • 新手有关Korn Shell问题,求解惑~
  • 不同的shell之间到底有何区别,与命令有关系吗
  • 有关在makefile中使用shell函数的问题
  • 有关shell的小问题,紧急求助!
  • 想学shell,请大家帮我推荐一本有关这方面的书
  • 请问一个shell中有关数据格式转化的问题
  • 求助:有关shell编程的问题
  • unix shell编程中有关换码符的问题
  • 求一SHELL,有关执行数据库语句!
  • 一个有关shell中变量的问题
  • 关于shell编程的基本问题,case有关的。
  • 有关shell编写
  • 有关shell程序的一个问题
  • shell 编程 有关删除指定行的问题
  • 请问shell标准输入的有关问题
  • 新手相问一个比较偏僻的问题。 怎么在终端里执行一串命令行, 不是单独命令。跟shell有关。
  • 有关shell编程方面的问题
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • shell变量和子shell的问题请教
  • 请教 一个shell问题 如何通过shell获得一个日志文件中的增量部分
  • 在shell中的交互问题,现在需要在shell结束时按某键或任意键
  • 请教一个 shell 问题,我用下面这个 shell 语句总是失败,请教
  • 急救!关于Shell脚本删除过期文件的问题,Shell脚本达人乱入
  • 请教一个shell编程的问题,就是如何在shell编程中读一个文件的内容?谢谢啦!
  • 使用shell在文本文件中进行字符串搜索问题?shell高手请进,分不够可以再加
  • vim问题,怎么不启动shell窗口,而只是把shell结果放到vim自身的command 栏里去?
  • 刚学Shell编程,问个关于Shell中if语句的问题
  • shell:sql问题,如何shell循环将不同表数据写入文件中...
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 请问“当前shell”和“子shell”的区别?
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell
  • 请问什么是shell编程?一般都用shell编程实现什么?
  • 小弟没写过shell,求解 linux shell 命令


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3