Дія папки діє на файли, не вказані в робочому процесі


2

Я тільки почав використовувати Automator вперше. Дія папки отримує два елементи Finder: скажімо файли "foobar 1.pdf" і "foobar 2.pdf" і копіює їх до іншої папки.

Він працює, але є побічний ефект: також були скопійовані допоміжні файли з однаковою назвою, але з різними розширеннями файлів (.

Щоб вирішити цю проблему, я створив ще одну папку для надсилання 'foobar1.aux', 'foobar1.nav' і т.д. Але щоб перевірити його, я не додав 'foobar2.aux', 'foobar2.nav' і так далі. Новий скрипт працює - файли надсилаються до кошика, але тепер є корисний бічний ефект: додаткові файли для 'foobar2' також видаляються, навіть якщо вони не були включені в робочий процес.

Чи є логічне пояснення такої поведінки? Будь-який спосіб уникнути побічних ефектів?

copying files

cleaning the folder


Чи можете ви поділитися знімок екрану вашого Automator налаштувати.
Buscar웃

@Buscar do Буде робити. Тільки другий повинен з'ясувати, як це зробити.
Sergio Parreiras

Відповіді:


2

A Folder Action робочий процес надасть вам кожен файл, коли виявлена ​​зміна у вказаній папці, включаючи ті, які не цікавлять вас.

Ваша проблема з Get Specified Finder Items. Він просто додає елементи до списку файлів для обробки. Він нічого не фільтрує!

Використовувати Filter Finder Items замість фільтрації списку, який повертає Finder. Ви можете зробити це будь-яку кількість полів / опцій, включаючи ім'я, розширення і тип.

Filter Finder Items Action


Дякую! Це спрацювало! Можливо, ви могли б також допомогти з відповідним незначним питанням? Коли я змінюю файли у вихідній папці - щоб робочий процес працював вище, потрібно видалити старі версії, перш ніж зберігати нові версії. Якщо я просто збережу нові файли над старими, нічого не відбувається. У всякому разі, щоб викликати зміну у вказаній папці просто збереження нових файлів?
Sergio Parreiras

1
Відповідно до власної довідкової документації Automator, для виявлення буде використано дію папки новий файлів у папці. Отже, він не підтримує виявлення змін. :( Сказавши це, ви, очевидно, можете використовувати launchd для виявлення змін у файлах і є інші способи ...
Vic

Знову дякую! Також іншою альтернативою буде сценарій з rsync, але мені все одно доведеться з'ясувати, як він працює. :-)
Sergio Parreiras
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.