删除目录下的指定文件的shell脚本

发布时间:2020-02-17编辑:脚本学堂
分享一例shell脚本,用于删除目录下的指定文件,很简单,有研究shell脚本编程的朋友,可以参考学习下。

本节内容:
shell/ target=_blank class=infotextkey>shell脚本 删除目录下的指定文件。

做日志备份时,由于替换了备份脚本没有完全测试通过,导致了备份目录遭到污染,如果所示:
删除目录下指定文件

需求描述:
test1、test2、test3仅存在nginx、coreseek、apche,删除掉所有其他的文件。

一个shell脚本,用了for+case,这里提示一个linuxjishu/14008.html target=_blank class=infotextkey>find命令,有兴趣的朋友可以研究下。

例子,shell脚本
 

复制代码 代码示例:

#!/bin/bash 
# site: www.jb200.com
#

#1.变量定义 
root="/backup/log" 
dirarr=("test1" "test2" "test3") 
nodelete=("nginx" "coreseek" "system" "apache" "." "..") 
 
#2.遍历删除 
for dir in ${dirarr[*]} 
do 
    filearr=$(ls $dir); 
    for file in ${filearr[*]} 
    do 
        case $file in 
            "nginx") 
                continue;; 
            "coreseek") 
                continue;; 
            "system") 
                continue;; 
            "apache") 
                continue;; 
            ".") 
                continue;; 
            "..") 
                continue;; 
            *) 
                rm $root/$dir/$file;; 
        esac 
    done 
done

>>> 您可能感兴趣的文章:
遍历目录处理特定目录的shell脚本
shell获取目录下(包括子目录)所有文件名、路径、文件大小
shell脚本实例:创建不存在的文件和目录
取得当前shell目录的方法
统计目录下文件大小的shell脚本实例
一个统计子目录大小的shell脚本
查找目录及子目录中同名文件的shell脚本(图文)
shell查找当前目录下大于1M的文件的三种方法
shell遍历目录处理特定目录的脚本
查看当前目录文件个数的shell命令
统计一个目录下文件数的组合命令
统计目录大小的shell脚本