需求:根据多个文件名称进行查找文件,并删除。
我的到的只有一个txt文档,文档里面是要删除的文件链接,现在首先根据文档中的链接创建出文件来,文档中的文件例如:
http:///article/t_201311/201311121347412.jpg
http://article/t_201311/20131112134958699.jpg
都在/article这个主文件目录下,但是t_201311就不止是一个了,而是根据年份月份生成的一个文件夹
下面是生成文件的代码,
1、首先使用文本工具将文件链接截取成/t_201311/20131112134958699.jpg这样的格式,推荐使用notepad++这个工具进行替换掉前面的http://article/,现在只剩下/t_201311/20131112134958699.jpg,将其报存到文本文件中,然后根据这个文本文件进行创建文件加和文件,代码如下:
#!/bin/bash
#-*-coding:utf-8-*-
cat jpg.txt|while read line
do
filename=`echo $line|awk -F"/" '{print $2}'`
dirname=`echo $line|awk -F"/" '{print $1}'`
if [ ! -d ./$dirname ]
then
mkdir $dirname
fi
if [ ! -f ./${dirname}/${filename} ]
then
touch ./${dirname}/${filename}
fi
echo "-----创建了${filename}文件"
done
创建完成之后再进行删除测试:
脚本如下:
#!/bin/bash
#-*-conding:utf-8-*-
cat /root/shelltest/test.txt|while read line
do
find /data -type f -name "$line" |xargs rm -rf
done
###test.txt这里面是要删除的文件名称