2015-03-27 1 views
0

Я создаю скрипт для целей выставления счетов на работе, который может подсчитывать все файлы, измененные в день его запуска, и имеют тип «Adobe Photoshop ... »(например,« Файл Adobe Photoshop »,« Файл Adobe Photoshop JPEG »,« Файл Adobe Photoshop TIFF »).перечислить все файлы, измененные сегодня с помощью типа «adobe photoshop ...» in applescript

Я не могу просто искать «изображения», потому что тогда скрипт также отображает исходные файлы (только когда файл был сохранен в фотошопе (изменен в офисе), он изменит тип на «Adobe Photoshop ____ file» «).

меня это до сих пор:

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 

Но он не ищет файлы, измененные today. Вместо этого он ищет файлы, измененные за последние 24 часа - например, когда вы запускаете скрипт в 18:00 сегодня, он также даст вам файлы, последние измененные вчера, но после 18:00 .. (и он ищет для всех файлов, а не только Photoshop файлы)

Так короче я хотел бы, чтобы имитировать процесс происходит в строке поиска Finder и ищет для date modified is today and kind is other: "adobe photoshop"

ответ

0

Вы должны использовать диапазон. Таким образом, вы должны быть в поисках полуночи до полуночи, как это ...

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 кстати появляется очень медленно на моем Snow Leopard. Есть более быстрые способы, используя прожектор через команду оболочки. См. this.

EDIT: для типа файла, который вы можете использовать

and kind is "text" или and kind contains "text" в поисках Finder. Больше информации here.

+0

спасибо .. Я знаю, что это очень медленно (на моем сценарии у меня есть тайм-аут applescript, следовательно, код «с тайм-аутом», чтобы противостоять ему). Я рассмотрю эту команду оболочки и посмотрю, будут ли дела лучше. –

+0

спасибо ! Работает отлично! –