递归删除目录/home/user/111下的空文件夹

#!/bin/bash
dir_name=/home/user/111
DeleteEmpty() {#find ${1:-.} -mindepth 1 -maxdepth 1 -type d | while read -r dirfind ${1:-$dir_name} -mindepth 1 -maxdepth 1 -type d | while read -r dirdoif [[ -z "$(find "$dir" -mindepth 1 -type f)" ]] >/dev/nullthenecho "$dir"rm -rf ${dir} 2>&- && echo "Empty, Deleted!" || echo "Delete error"fiif [ -d ${dir} ]thenDeleteEmpty "$dir"fidone
}DeleteEmpty

find ${1:-.}就是如果没有传参数,就查找当前目录.


shell脚本中${1:-}是什么意思?
$1是函数的第一个参数
看替换的定义,${varname:-word},如果varname存在且非null,则返回其值;否则,返回word。用途:如果变量未定义,则返回默认值。
上述替换中的word是空,即,如果1没有定义,就返回空

所以,${1:-}的意思就是说,如果函数有第一个参数,就返回这个参数,如果没有,就返回空。

【Linux】33. shell脚本 递归删除空目录相关推荐

  1. linux配置定时删除日志文件,Linux使用shell脚本定时删除历史日志文件

    Linux使用shell脚本定时删除历史日志文件,文件,小时,时间,目录,脚本 Linux使用shell脚本定时删除历史日志文件 易采站长站,站长之家为您整理了Linux使用shell脚本定时删除历史 ...

  2. linux 递归删除 空目录命令,使用shell脚本实现递归删除空目录

    平时一般使用php脚本实现一些文件管理功能,总归没有shell脚本强大,虽然本人不会写shell脚本,但是读懂shell脚本还是没问题的.对于"递归删除空目录"这样简单的功能使用p ...

  3. linux经典脚本实例,Linux常用Shell脚本珍藏

    [实例简介] Linux常用Shell脚本珍藏 (2)编写任务定时器: C代码☆ 1. echo 00 1 *k */bin/sh /usr/bin/fileback">:/root/ ...

  4. Linux 常用Shell脚本,后端开发必备

    Linux 常用Shell脚本,后端开发必备 文章目录 Linux 常用Shell脚本,后端开发必备 1 用户猜数字 2 查看有多少远程的 IP 在连接本机 3 helloworld 4 打印 tom ...

  5. Linux下shell脚本/Makefile编写

    Linux下shell脚本/Makefile编写 一.基本概念 代码变成可执行文件,叫做编译(compile):先编译这个,还是先编译那个(即编译的安排),叫做构建(build). make只是一个指 ...

  6. Linux系统shell脚本、python脚本编写

    GPU排队脚本 python脚本 GPU排队脚本 ---- GPU一旦空闲触发脚本执行程序 参考: GPU排队脚本(python脚本) cmd = 'bash run.sh' 该句设置要执行的pyth ...

  7. Linux下shell脚本之双色球摇号脚本

    Linux下shell脚本之双色球摇号脚本 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 二.脚本内容 三.运行脚本 一.脚本要求 1.编写脚本Lottery.sh,模拟摇号过程 2.6位数 ...

  8. Linux常用Shell脚本珍藏

    我们在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运维常用的脚本.如何学好脚本,最关键的 ...

  9. linux shell程序设计实验报告,linux的shell脚本实验报告

    <linux的shell脚本实验报告>由会员分享,可在线阅读,更多相关<linux的shell脚本实验报告(7页珍藏版)>请在人人文库网上搜索. 1.第二次实验内容一.实验名称 ...

最新文章

  1. 数据结构 — 双向链表
  2. [转]Git忽略提交规则 - .gitignore配置运维总结
  3. linux 文件系统 启动,linux kernel文件系统启动部分
  4. python最新版本-Python 3.8 已发布 现在是切换至新版本的好时机吗?
  5. python 数据结构-字典
  6. 软件测试行业有哪些细分方向,软件测试人员有哪些职业发展方向?
  7. POJ 2337 欧拉回路
  8. 微服务认证架构如何演进来的?
  9. php获取跳转后url,php获取跳转后真实url的方法
  10. 系统之家win11最新旗舰版64位镜像v2021.07
  11. iPhone6s用户感动!升级ios13还能再战两年
  12. Docker Hub 将放弃支持客户端 1.5 及以下版本
  13. 24.事务控制和锁定语句
  14. 列标题 如何删除gridcontrol_Excel如何制作工资条?
  15. Matlab入门1(有手就行)
  16. 法兰克焊接机器人编程入门_焊接机器人编程入门与编程技巧介绍
  17. matlab调和均值滤波_均值滤波和中值滤波的MATLAB实现
  18. 在线报刊html代码,数字报纸HTML版本
  19. 人工智能的历史与发展
  20. 微信小程序自带地图_微信小程序API 地图组件控制

热门文章

  1. 如何用UE(UltraEdit)删除重复行?--转
  2. 对话V神:权益证明POS新趋势
  3. SpringBoot - 构建监控体系03_使用 Admin Server 管理 Spring 应用程序
  4. Apache Kafka-消费端_批量消费消息的核心参数及功能实现
  5. Apache ZooKeeper - ZK的基本特性与节点应用场景一览
  6. 并发编程-15并发容器(J.U.C)核心 AbstractQueuedSynchronizer 抽象队列同步器AQS介绍
  7. Linux 磁盘I/O读写速度检测
  8. ContentProvider初探
  9. Redis与其他缓存框架的对比
  10. python怎么计算时间_python怎么计算若干分钟后是第几天,星期几