Название должно прояснить, что мне нужно, но, по сути, я бы хотел нажать команду + некоторую клавишу, чтобы настроить команду ditto для объединения файлов и папок, а не стирать и заменять их, например, команда + C/command + V делает.

Как вы относитесь к редактированию / просмотру команд клавиатуры и команд терминала, на которые они отображаются?

2 ответа2

2

Вы можете сделать это, создав Сервис с помощью Automator, который получает файлы и папки в качестве входных данных и доступен в Finder. Добавьте действие « Выполнить сценарий оболочки», который получает входные данные в качестве аргументов, и измените сценарий по умолчанию на тот ditto вызов.

Когда вы делаете это таким образом, вы не контролируете, какой каталог является src , а какой - target .


Либо откройте Automator, создайте службу, которая получает выбранные папки в Finder, и добавьте действие « Выполнить AppleScript» со следующим кодом сценария:

on run {input, parameters}
    set dest to choose folder with prompt "Select destination:"
    set dest_path to (POSIX path of dest) as text
    set src_paths to ""
    repeat with idx from 1 to count (input)
        set src_paths to src_paths & (quoted form of (POSIX path of item idx of input as text)) & " "
    end repeat
    set cmd to "ditto " & src_paths & quoted form of dest_path
    do shell script cmd
end run

Что это делает: он будет принимать ваш выбор в Finder в качестве исходных папок, запрашивать папку назначения. а затем выполнить

ditto src1 src2 src3 srcn dest

Сохраните и назначьте сочетание клавиш в Системных настройках »Клавиатура» Сочетания клавиш »Службы. Найдите свою службу в категории "Файлы и папки" и нажмите ее справа. Затем вы можете нажать желаемый ярлык.

0

С одной поправкой к вышеупомянутому Applescript, а именно

"ditto -x -k "

Вы можете изменить это, чтобы служба Finder распаковывала (извлекала) один или несколько файлов .zip в выбранную вами папку одним щелчком мыши.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .