Date 列出所有今天修改过的文件,并键入;adobe photoshop…“;在applescript中

Date 列出所有今天修改过的文件,并键入;adobe photoshop…“;在applescript中,date,find,applescript,file-type,Date,Find,Applescript,File Type,我正在创建一个用于工作计费的脚本,该脚本可以计算运行当天修改的所有文件,并且类型为“Adobe Photoshop…”(例如“Adobe Photoshop文件”、“Adobe Photoshop JPEG文件”、“Adobe Photoshop TIFF文件”) 我不能只搜索“图像”,因为脚本也会列出原始文件(只有当文件保存在photoshop中(在办公室修改)时,才会将类型更改为“Adobe photoshop文件”) 到目前为止,我有: with timeout of (5 * 60) s

我正在创建一个用于工作计费的脚本,该脚本可以计算运行当天修改的所有文件,并且类型为“Adobe Photoshop…”(例如“Adobe Photoshop文件”、“Adobe Photoshop JPEG文件”、“Adobe Photoshop TIFF文件”)

我不能只搜索“图像”,因为脚本也会列出原始文件(只有当文件保存在photoshop中(在办公室修改)时,才会将类型更改为“Adobe photoshop文件”)

到目前为止,我有:

with timeout of (5 * 60) seconds
    set root_fol to (choose folder)

    tell application "Finder"
        set files_ to count ((files of entire contents of root_fol) whose modification date is greater than ((current date)) - 1 * days)
    end tell

    display dialog (files_)
end timeout
但它不会查找今天修改的文件。相反,它会查找在过去24小时内修改过的文件——例如,当您今天18:00运行脚本时,它还会提供昨天最后一次修改的文件,但在18:00之后。。(它搜索所有文件,而不仅仅是Photoshop文件)


因此,简而言之,我想模拟一下在Finder的搜索栏中查找
日期是今天,种类是其他的过程:“adobe photoshop”

您需要使用一个范围。所以你应该像这样寻找午夜到午夜

set fl to path to downloads folder from user domain as alias
set ds to date string of (current date)

# Today at midnight
set t to date (ds & " 12:00:00 AM")

# Yesterday at midnight
set y to t - 1 * days

tell application "Finder"
    set fc to count ((files of entire contents of fl) whose modification date is greater than y and modification date is less than t)
end tell
顺便说一句,在我的雪豹身上使用Finder的速度非常慢。有更快的方法,通过shell命令使用spotlight。有关详细信息,请参阅

编辑:对于可以使用的文件类型


和kind在Finder搜索中是“text”
和kind包含“text”
。更多信息。

谢谢。。我知道它非常慢(在我的脚本中,我得到了一个applescript超时,因此使用了“with timeout”代码来对抗它)。。我将研究shell命令,看看情况是否会好转