高中生

- 金币
- 548
- 好评
- 0
- 信誉
- 100
|
本帖最后由 I_NV 于 2020-1-31 18:41 编辑
寒假有空,今天学了一天shell,自己慢慢摸索,写了一个方便平常自己清理文件的脚本,效果还行
代码(注意:小白就不要用,否则删除了重要文件,我不负责)已更新- #函数定义:通过白名单的清理方式
- function Clean_by_Whitelist(){
- local array i j int
- array=("$@")
- cd $1
- for i in `ls -a . | tr " " "?"`; do
- local int=0
- i=`echo "$i" | tr "?" " "`
- for j in "${array[@]}"; do
- if [ "${i}" = "${j}" ]; then
- int=1
- break
- fi
- done
- if [ $int = 0 ]; then
- #rm -r "${i}" #删除文件命令,已经注释,确保执行结果没问题后再取消注释
- echo "成功删除:${1}/${i}"
- fi
- done
- }
- ################################################################################
- #例子 根据需求修改 下面表示删除/storage/emulated/0/2目录下除hi hello外的所有文件
- clean_dir_1="/storage/emulated/0/2"
- whitelist_1=(
- "hi hello"
- )
- Clean_by_Whitelist ${clean_dir_1} "${whitelist_1[@]}"
复制代码
16行是删除文件命令,已经注释了。先执行一次,确认执行结果没问题后,取消注释再执行,就是真的删除文件了。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|