首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

带条件删除比xMB小的文件的Shell脚本

可以使用以下方式实现:

代码语言:shell
复制
#!/bin/bash

# 设置要删除的文件目录
directory="/path/to/directory"

# 设置文件大小的上限(单位:MB)
size_limit=10

# 遍历目录下的文件
for file in "$directory"/*
do
    # 检查文件大小是否小于指定上限
    if [ -f "$file" ] && [ $(du -m "$file" | cut -f1) -lt $size_limit ]
    then
        # 删除文件
        rm "$file"
        echo "已删除文件: $file"
    fi
done

这个Shell脚本会遍历指定目录下的所有文件,并检查文件大小是否小于指定的上限(size_limit)。如果文件大小小于上限,则会删除该文件,并输出相应的提示信息。

该脚本的使用方法如下:

  1. 将脚本保存为一个文件,例如delete_small_files.sh
  2. 打开终端,并进入脚本所在的目录。
  3. 运行以下命令给予脚本执行权限:chmod +x delete_small_files.sh
  4. 运行脚本:./delete_small_files.sh

请注意,上述脚本仅删除指定目录下的文件,不会删除子目录中的文件。如果需要删除子目录中的文件,请使用递归方式遍历目录。

推荐的腾讯云相关产品:对象存储(COS)

  • 概念:腾讯云对象存储(Cloud Object Storage,COS)是一种高可用、高可扩展、低成本的云端存储服务,适用于存储和处理大规模非结构化数据。
  • 优势:高可用性、高可扩展性、低成本、安全可靠、灵活易用。
  • 应用场景:备份与归档、大规模数据处理、静态网站托管、移动应用、音视频存储与分发等。
  • 产品介绍链接地址:腾讯云对象存储(COS)

请注意,以上答案仅供参考,具体实现方式和推荐的产品可能因实际需求和环境而异。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Shell 脚本的条件测试与比较

    Shell脚本条件测试 语法 说明 test 利用test命令进行条件测试 [] 通过[]进行条件测试 [[]] 通过[[]]进行条件测试 (()) 通过(())进行条件测试 test语法 test...文件测试操作符 说明 -d 文件 文件存在且为目录为真,及测试表达式成立 -f 文件 文件存在且为普通文件为真,及测试表达式成立 -e 文件 文件存在即为真,则表达式成立,不区别文件和目录 -r 文件...-L 文件 文件存在且为链接文件为真,及测试表达式成立 f1 -nt f2 文件f1比文件f2新则为真,即表达式成立,根据文件的修改时间来计算 f1 -ot f2 文件f1比文件f2旧则为真,即表达式成立...,根据文件的修改时间来计算 字符串测试表达式 字符串测试符 说明 -n "字符串" 若字符串不为“0”,则为真,即表达式成立 -z "字符串" 若字符串为“0”,则为真,即表达式成立 "串1" = "...= "串2" 若字符串1不等于字符串2,则为真,即表达式成立 整数二次元比较符 在[]以及test中使用的比较符 在(())和[[]]中使用的比较符 说明 -eq ==或者= 相等 -ne !

    59820

    【Linux系列】Shell 脚本中的条件判断:``与`]`的比较

    在编写 Shell 脚本时,条件判断是控制脚本流程的重要手段。Shell 提供了多种方式来进行条件判断,其中[ ]和[[ ]]是两种常见的条件测试表达式。...[[ ]]的优势在于它可以直接处理模式匹配,这使得它在处理字符串时更加方便。 4. 变量和字符串的处理 在 Shell 脚本中,正确处理变量和字符串是非常重要的。...条件判断的应用场景 条件判断在 Shell 脚本中有着广泛的应用,例如: 分支处理:根据条件选择不同的脚本分支执行。 参数检查:在脚本执行前检查参数的有效性。...环境配置:根据不同的环境变量配置脚本的行为。 错误处理:根据条件判断是否发生错误,并执行相应的错误处理代码。 6. 结论 在 Shell 脚本编写中,[ ]和[[ ]]都是进行条件判断的重要工具。...因此,在 Bash 脚本中,推荐使用[[ ]]来进行条件判断,以利用其强大的功能和更好的性能。

    10410

    shell脚本中的if条件语句介绍和使用案例

    #前言:在生产工作中if条件语句是最常使用的,如使用来判断服务状态,监控服务器的CPU,内存,磁盘等操作,所以我们需要熟悉和掌握if条件语句。 简介 if条件语句,简单来说就是:如果,那么。...,如果是文件并且存在就打印相关的命令 #执行效果: [root@shell scripts]# sh if.sh [guoke1] [[guoke2]] guoke3 #说明:因为/etc/hosts...[root@shell scripts]# sh if2.sh 4 input failure 4.if条件语句的使用案例 4.1.检查软件包是否安装 #检查sysstat包是否安装 [root@shell...配置邮件报警功能 3.进行判断,如果取到的值小于200M,就报警 4.编写shell脚本 5.加入crond定时任务,然后每3分钟检查一次 #总结:if条件语句可以做的事情还有很多,大家可以根据工作需求去多多开发挖掘...,下篇将继续写shell脚本的另外一个条件语句case。

    9.8K40

    shell脚本中的case条件语句介绍和使用案例

    #前言:这篇我们接着写shell的另外一个条件语句case,上篇讲解了if条件语句。...case条件语句我们常用于实现系统服务启动脚本等场景,case条件语句也相当于if条件语句多分支结构,多个选择,case看起来更规范和易读 #case条件语句的语法格式 case "变量" in...实践3.开发nginx启动脚本 #主要思路: #1.主要通过判断nginx的pid文件有无存在,通过返回值查看有没有运行 #2.通过case语句获取参数进行判断 #3.引入系统函数库functions中的...、比较,应用比较广,case条件语句主要是写服务的启动脚本,各有各的优势。...好了,shell脚本的条件语句就讲解到这里了,接下来会继续写shell脚本的循环(包括for,while等),如果写的不好的地方还望指出,多多交流提高,下次再会。。。

    6.2K31

    shell脚本+webhook实现联动一键联动删除异常大小的文件

    之前有写过 1、shell脚本实现文件自动清理并推送钉钉机器人告警 2、【Graylog告警联动篇】部署webhook服务实现自动传参并自动执行shell脚本 在文章中介绍过开源webhook工具,非常适合执行联动动作场景...现通过简单的实践案例介绍shell脚本+webhook实现联动一键联动删除异常大小的文件 具体步骤如下 1、monitor_files_size.sh 脚本内容如下 #!...", "text":" ##### 请确认是否删除大小异常的文件 \n > ##### 待删除的文件路径:template1 \..." else echo "删除文件的路径:" >> ${LOCK} 2>&1 echo "删除文件的路径:" echo $filePath >> ${LOCK} 2>&1...最后的效果如下 告警推送消息如下 点击同意删除进行联动删除的效果如下 Tips 1、webhook链接为内网地址,建议手机连入远程VPN后,即可进行手机钉钉一键联动删除 2、删除的脚本写得比较粗略,

    19010

    【.sh】Shell 脚本文件的基础内容

    基础知识 .sh文件是什么? .sh文件即 Shell 脚本文件,通常用来执行一系列的命令。...Shell脚本文件使用Shell编程语言编写,可以包含各种命令、条件判断、循环等,用于自动化任务、执行系统管理任务等。Shell脚本文件可以通过终端或者其他脚本执行器运行。...可以将Shell脚本看作是一种将多个Linux指令组合在一起执行的方式,另外也可以包含变量、函数、条件判断和循环等程序控制结构,使得脚本更加灵活和功能强大。 2....下面是一个简单的.sh文件示例,它会输出"Hello, World!"到终端: 创建sh文件,比如我创建一个名为 test01.sh 的shell脚本. vi test01.sh 内容如下: #!...: 2.2 示例二 输入输出+创建 以下是一个简单的Shell脚本示例,它会提示用户输入姓名,并向用户打印一条欢迎消息: 创建sh文件,比如我创建一个名为 test02.sh 的shell脚本. vi

    45010

    效率工具:强大的批量删除文件的脚本

    最近打包服务器上的apk包又增多了,每次手动rm操作过于麻烦,于是花了几分钟写了一个可以对指定目录下根据最后修改时间和通配符匹配进行批量删除的脚本。...将这个脚本加入crontab中之后,以后就再也不用担心多余的安装包占用磁盘空间了。 简短的代码 1 2 3 4 5 6 7 8 9 #!.../tmp目录下的,所有最后修改时间为3天前的apk文件,我们只需要这样执行。...1 ruby removeOldFiles.rb "/tmp/*.apk" 3 为什么第一个参数使用双引号 第一个参数为包含通配符的路径,在shell中存在一个工具就是glob会将包含通配符的路径匹配到具体的文件...,得到的结果就是glob匹配后的文件名(前提是通配符可以匹配到文件)。

    1.9K20

    通过shell脚本自动清理超过指定大小的文件

    由此引出需求,查找cache目录下的所有大于60M的swap.state文件并清除,即: 1)查找cache目录下的所有swap.state文件 2)判断是否大于60M 3)大于60M则清空 缓存目录为...同时使用了多个管道 较为繁琐,且管道过滤之后的只有文件大小,相对应的文件名丢失,后续的处理较麻烦,当然也可以使用数组等解决,因此放弃此方案。...更好的方法: 不要使用带单位的输出,直接使用ls -l 的输出就可以作为相应的数据源。ls -l输出的结果以字节为单位,简单,容易处理。...不过需要同时考虑到第一个方案的缺点,因此加了两个临时变量去存储相应的文件名、文件大小。...总结:采用du -sh这种带自动单位换成的命令去处理,麻烦多多,有时候还是简单的使用"ls -l"比较好。

    3.2K00

    在Shell脚本中逐行读取文件的命令方法

    - 使用echo显示输出内容,输出内容包括自定义的字符串和变量,$rows变量为文本文件中的每行内容 Tips:可以将上面的脚本缩减为一行命令,如下: [root@localhost ~]# cat mycontent.txt...|while read rows;do echo "Line contents are : $rows";done 方法三、使用传入的文件名作为参数 第三种方法将通过添加$1参数,执行脚本时,在脚本后面追加文本文件名称...创建一个名为“ example3.sh”的脚本文件,如下所示: [root@localhost ~]# cat example3.sh #!...创建一个名为“ example4.sh”的脚本文件,如下所示: [root@localhost ~]# cat example4.sh #!.../bin/bash cat mycontent.txt |awk '{print "Line contents are: "$0}' 运行结果: 总结 本文介绍了如何使用shell脚本逐行读取文件内容

    9.2K21

    【Linux系列】字符串操作的艺术:删除前缀的 Shell 脚本技巧

    它提到,文件包含漏洞通常发生在PHP等脚本语言中,当开发者在引入文件时没有对文件名进行充分的校验,就可能导致意外的文件泄露或恶意代码注入。...此外,文章还探讨了利用文件包含漏洞的条件,比如函数通过动态变量引入文件,以及用户能够控制这个动态变量。...无论是在数据处理、日志分析还是自动化脚本中,我们经常需要对字符串进行操作,以提取、替换或删除特定的部分。 1. 字符串操作的重要性 字符串是编程中最基本的数据类型之一,它由一系列字符组成。...在 Shell 脚本中,字符串操作尤为重要,因为 Shell 脚本通常用于处理命令行参数、文件名、路径等,这些都是字符串的形式。掌握字符串操作技巧,可以帮助我们编写更加高效、灵活的脚本。 2....配置文件处理:在处理配置文件时,可能需要从配置项中删除环境特定的前缀。 命令行参数处理:在处理命令行参数时,可能需要从参数中删除标志或选项。 6.

    10300

    原 shell脚本中的逻辑判断,文件目录属

    shell脚本中的逻辑判断: 逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(=);...a=1 那么 a 就不>3 所以就不满足条件,就是else 第三种格式:if …; then … ;elif …; then …; else …; fi 文件目录属性判断: 【 if file 】 判断是否是普通文件...,切存在 【-d file 】判断是否是目录,且存在 【 -e file 】判断文件或目录是否存在 【 -r file 】判断文件是否可读 可写 可执行 = 类似 判断的不同写法:【 -f $f 】||...,或者被删除的话,脚本就会运行出错,出现bug 应该加上一个判断条件 #!...: 在网卡系统服务脚本中,如,/etc/init.d/iptables中就用到了case 在case中,可以在条件中使用“|”,表示或的意思 输入一个同学的分数,判断成绩是否及格,优秀。

    1.5K51
    领券