删除一个文件夹中的所有 .psd 文件

Posted

技术标签:

【中文标题】删除一个文件夹中的所有 .psd 文件【英文标题】:Delete all .psd files in one folder 【发布时间】:2013-08-06 19:22:52 【问题描述】:

所以我是 perl 的新手,我有一个文件夹,而不是包含子文件夹,其中还包含子文件夹等。所有这些子文件夹和子文件夹的混乱都是说“.psd”的文件

我尝试研究如何将它们全部删除,到目前为止,这是我最好的尝试(但我不确定它会做什么,我不想最终删除我计算机上的每个 .psd 文件).. . 我只想删除桌面上某个文件夹(或该文件夹的子文件夹等)中的所有 .psd 文件

到目前为止的代码: unlink glob('*.psd');

【问题讨论】:

(再次,我是 perl 的新手,所以我如何设置要删除所有这些 .psd 文件的文件夹...它只是我保存 .pl 文件的那个文件夹吗? perlscript 文档在?) 【参考方案1】:

借助以下工具在几秒钟内生成和修改脚本:

find2perl -type f -name '*.psd'

#!/usr/bin/perl

use strict;
use warnings;
use autodie;  # abort execution with warning when "unlink" fails.
use File::Find;

find 
  # do the "wanted" action for each file/directory
  wanted => sub 
    unlink $_ if -f $_ and /\.psd$/;
    # -f tests that the entry is a normal file
    # The regex /\.psd$/ tests that the filename has a .psd ending
  ,
, $ARGV[0]; # take the start directory from command line

像这样称呼

$ perl the-script.pl /place/where/you/want/to/start

这将在所需目录中递归工作。

【讨论】:

find2perl 生成可怕的代码,不应该作为示例展示给刚接触 perl 的人。 wanted 应该看起来像带有 no_chdir 选项集的 unlink $_ if -f $_ and /\.psd$/ 确实这很丑,它没有通过perlcritic -4 =) 但它有效。 请随意修改我的帖子。 @sputnik 好的,我擦洗了没用的部分。

以上是关于删除一个文件夹中的所有 .psd 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将 PSD 文件中的所有图层导出为 PDF 矢量以在 Xcode 6 中使用资产目录

Python图片操作-psd_tools:将psd文件转换成BMP

怎样显示PSD,AI,cdr,eps 文件的缩略图

怎么在文件夹中浏览PSD图片缩略图,急,我的是w7系统

企业工商营业执照副本模板PSD源文件素材下载

最新机动车行驶证模板PSD可编辑分层文件下载