我有一个遗留应用程序(不受支持),可以根据需要生成 XLS、XLSX、DOC 和 DOCX 的 PDF 文件。该应用程序的磁盘已满,我们需要删除这些 PDF。因此,我正在寻找一个脚本,可以让我找到所有这些 PDF 并稍后删除它们。
我已经做了一些研究,并且接缝做了类似的事情,但我丢失了完整的文件夹路径以及文件扩展名和大小,因此我可以手动查看和检查:
find . -exec bash -c 'basename "$0" ".${0##*.}"' {} \; | sort | uniq --repeated
答案1
和zsh
:
set -o extendedglob
print -rC1 -- **/*.(#i)pdf(ND.e['()(($#)) $REPLY:r.(#i)(doc|xls)(x|)(N.Y1)'])
将列出pdf
至少有一个具有相同根名称的 doc/docx/xls/xlsx 常规文件的常规文件(扩展名与 不区分大小写匹配(#i)
)。
print -rC1
将( olumprint
r
上的 aw 1
C
)替换为rm
以将其删除。