【Linux】33. shell脚本 递归删除空目录
生活随笔
收集整理的這篇文章主要介紹了
【Linux】33. shell脚本 递归删除空目录
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
遞歸刪除目錄/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 }DeleteEmptyfind ${1:-.}就是如果沒有傳參數(shù),就查找當(dāng)前目錄.
shell腳本中${1:-}是什么意思?
$1是函數(shù)的第一個參數(shù)
看替換的定義,${varname:-word},如果varname存在且非null,則返回其值;否則,返回word。用途:如果變量未定義,則返回默認(rèn)值。
上述替換中的word是空,即,如果1沒有定義,就返回空
所以,${1:-}的意思就是說,如果函數(shù)有第一個參數(shù),就返回這個參數(shù),如果沒有,就返回空。
總結(jié)
以上是生活随笔為你收集整理的【Linux】33. shell脚本 递归删除空目录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Tools】git提示“warning
- 下一篇: 【opencv】4.初始化Mat的方式、