删除目录中所有不在目录副本中的文件

A_P

我有以下文件夹结构

foo/images
foo/infos

infos 包含一组 xml 文件,这些文件描述了 foo/images 文件夹中的图像。命名约定是以下用于图像的image1.png和用于描述符的image1.xml。我试图解决的问题如下:删除所有没有关联描述符的图像。

我一直在使用 emacs dired 为此很长一段时间取得了巨大的成功。但是,现在我需要在没有安装 emacs 的系统上执行此操作,bash 是唯一的选择。

布莱米
#!/bin/bash

infosdir="foo/infos"
imagesdir="foo/images"

# use a different IFS to allow spaces in filenames
IFS=$(echo -en "\n\b")

# for all images in the images-directory
for pngfullname in ${imagesdir}/*.png; do
 # get the name of the image without the path and without the file-extension
 basename="$(basename ${pngfullname} .png)"
 # if an appropriate xml-file in the infos-directory is missing
 if [ ! -f "${infosdir}/${basename}.xml" ] ; then
   # delete the image
   rm "${pngfullname}"
 fi
done

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

删除目录中所有目录中的文件

如何从目录中删除所有文件而不在Node.js中删除目录

删除子目录中所有文件的权限

删除指定目录中所有大小为零的文件

如何删除目录中所有空文件?

删除目录中的所有文件,而不删除目录

使用sed删除目录中所有文本文件中的字符

SSIS(C#或VB):删除目录中所有Excel文件中的1-12行

无法删除目录中的所有文件

删除目录中的所有文件

如何从目录中删除所有文件?

删除目录中的所有文件

Perl删除目录中的所有文件

从目录中所有文件的名称中添加或减去数字

在python中读取当前目录中所有文件的内容

统计目录中所有文件中单词的出现次数

搜索并替换linux目录中所有文件中的文本

循环遍历vb中所有目录中的文件

使用Powershell替换目录中所有文件中的值

删除目录中的所有文件,但保留目录吗?

目录中所有文件的文本替换

用于删除目录中所有文件并打印已删除文件计数的Shell脚本

查找目录中所有文件都早于X的目录?

如何删除所有目录中的所有文件?

如何删除目录中超过2周的目录中的所有目录(最新目录中与文件模式匹配的目录除外)?

如何在每个列表的目录中检索目录中所有文件的内容?

编辑目录中所有 ZIP 文件中的所有文件(查找 + 替换)

删除目录中所有文件和子文件夹的最快方法是什么?

更改目录中所有文件的所有日期