linux如何编个shell去指定按照某个文件里列出的文件名来循环删除某个文件夹下的这些文件
各位高手,小弟对Linux不了解,现遇到一个麻烦,望各位帮助下:问题描述:假设File目录下有很多个文件夹,这些文件夹是按天生成各自命名的文件夹,例如20131224,2...
各位高手,小弟对Linux不了解,现遇到一个麻烦,望各位帮助下:
问题描述:假设File目录下有很多个文件夹,这些文件夹是按天生成各自命名的文件夹,例如20131224,20131225,20131226等等,而以天命名的文件夹下还有一层文件夹,这些是1-999的数字命名的,最后在这层文件夹里是各个图片文件,现在我想删除某天文件夹下的某些文件,由于文件较多,于是假设我在File同级目录下建立了一个文本文件叫:filename,是专门记录具体删除某天文件夹下的哪些文件,比如我想删除20131225那天的一部分文件(不含文件夹),我就在filename中写好图片的文件名,然后我如何写一个shell,使该shell自动去读这个filename中的文件名并对应将指定的那天的filename中的这些文件循环遍历删除掉。现附上dos的脚本如图所示,换句话说,能否帮忙将dos该脚本换成linux该脚本,谢谢! 展开
问题描述:假设File目录下有很多个文件夹,这些文件夹是按天生成各自命名的文件夹,例如20131224,20131225,20131226等等,而以天命名的文件夹下还有一层文件夹,这些是1-999的数字命名的,最后在这层文件夹里是各个图片文件,现在我想删除某天文件夹下的某些文件,由于文件较多,于是假设我在File同级目录下建立了一个文本文件叫:filename,是专门记录具体删除某天文件夹下的哪些文件,比如我想删除20131225那天的一部分文件(不含文件夹),我就在filename中写好图片的文件名,然后我如何写一个shell,使该shell自动去读这个filename中的文件名并对应将指定的那天的filename中的这些文件循环遍历删除掉。现附上dos的脚本如图所示,换句话说,能否帮忙将dos该脚本换成linux该脚本,谢谢! 展开
2个回答
展开全部
可以的,我给你写出来吧,用shell ,+741345015
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你还不如把filename的格式贴出来
linux shell处理string的能力比dos不知强了多少倍
假设你要处理/path/to/20131223下的文件
#!/bin/sh
while IFS='~' read -ra ln; do
for x in "${ln[@]}"; do
find /path/to/20131223 -type t -name $x -exec rm {} \;
done
done < /path/to/filename
linux shell处理string的能力比dos不知强了多少倍
假设你要处理/path/to/20131223下的文件
#!/bin/sh
while IFS='~' read -ra ln; do
for x in "${ln[@]}"; do
find /path/to/20131223 -type t -name $x -exec rm {} \;
done
done < /path/to/filename
追答
每一行就是一个文件?那很容易了
#!/bin/shwhile read -r ln; do find /path/to/20131223 -type t -name $ln -exec rm {} \;done < /path/to/filelist
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询