Использование автомата для применения javascript к локальным текстовым файлам на компьютере - PullRequest
0 голосов
/ 17 июня 2020

Привет, я написал несколько javascript, которые я хочу автоматически применять к текстовым файлам, добавленным в папку на моем компьютере, потому что я видел, что вы можете использовать javascript в Automator.

Теперь я застрял, но я чувствую, что это должно быть легко:

  • Я хочу, чтобы Automator передавал текстовое содержимое из файла .txt как переменную text, поэтому javascript может применяться сценарий, который я написал с помощью
  • или для автомата, чтобы передать адрес текстового файла в качестве переменной в javascript, чтобы он мог readAsText()
  • Затем я хочу newText, создаваемый сценарием, чтобы передать его обратно для замены исходного файла .txt, а также сохранить и заменить оригинал.

Возможно ли такое? Надеюсь, я не зря написал сценарий. Если кто-нибудь знает, как применить javascript к локальным файлам, я был бы очень признателен!

Заранее спасибо!

1 Ответ

0 голосов
/ 20 июня 2020

Ниже приводится простая демонстрация того, как использовать действие Run JavaScript в Automator, чтобы взять файл или файлы в качестве входных данных, прочитать их содержимое, управлять им, а затем записать его обратно в файл.

В этом конкретном примере строки файла смещаются на одну позицию табуляции:

Screenshot of Automator workflow

App = Application.currentApplication();
App.includeStandardAdditions = true;

function run(documents) {
        documents.forEach(filepath => App.write(
                App.read(filepath)
                   .split('\n')
                   .map(line=>"\t"+line)
                   .join('\n'),
                { 'to': filepath }
        ));

        return App.displayNotification(
                'Done', {
                        'withTitle' : 
                        'Indent Contents of File'
                }
        );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...