AppleScript для вставки текста из буфера обмена в файл

Я думал, что это будет легко. Google заставляет меня думать иначе.

Что мне нужно, так это межоперационный буфер обмена для бедняков. Все, что я видел в сети, либо не бесплатно, ни одно такое простое приложение не должно никому ничего стоить, либо несовместимо с локальными установками Linux, Windows или чем-то подобным.

В лучшем случае действие правой кнопки мыши было бы добавлено к «вырезать», «копировать» и «вставить» с именем что-то вроде «копировать в файл». Файл может существовать или не существовать, но иметь фиксированное имя и находиться на общем диске.

Думаю, мне понадобится второе действие правой кнопкой мыши «Вставить из файла», чтобы дополнить «копировать в файл».

Итак, может кто-нибудь показать мне, как использовать AppleScript или, может быть, Automator, взять текущее текстовое содержимое буфера обмена и вставить в существующий файл, перезаписав любое существующее содержимое файла?

ОС/Х Снежный Барс

Спасибо.


person Wes Miller    schedule 02.04.2012    source источник
comment
Из какого файла вы копируете текст?   -  person adayzdone    schedule 02.04.2012
comment
Тип файла не определен. Я понимаю, что все, что я могу надежно извлечь, это текст, и я предполагаю, что действие «прошлое в плоский файл» просто вставит текстовую часть чего-либо в буфер обмена. Нужен ли мне дополнительный код, чтобы убедиться, что текст является простым текстом?   -  person Wes Miller    schedule 02.04.2012
comment
@fanaugen Неважно. Ответы на оба вопроса - да. Теперь, как мне связать эти апплеты практически со всеми меню мыши?   -  person Wes Miller    schedule 02.04.2012
comment
@WesMiller см. редактирование моего ответа   -  person fanaugen    schedule 07.04.2012


Ответы (1)


как иметь AppleScript […], взять текущее текстовое содержимое буфера обмена и вставить в существующий файл, перезаписав любое существующее содержимое файла

Код AppleScript:

do shell script "pbpaste > /path/to/your/clipboard-file.txt"

Чтобы прочитать текст из файла обратно в буфер обмена, используйте

do shell script "cat /path/to/your/clipboard-file.txt | pbcopy"

Документацию см. на странице man pbpaste

РЕДАКТИРОВАТЬ: теперь, чтобы преобразовать AppleScript в Mac OS X Service, который будет отображаться в группе «Службы» каждого контекстного меню (при щелчке правой кнопкой мыши / CTRL+щелчок по любому тексту), вы может использовать Automator, как описано в этом учебник.

person fanaugen    schedule 02.04.2012
comment
Кому @fanaugen Введите это в редакторе скриптов? Сделать приложение? - person Wes Miller; 02.04.2012
comment
Как записать в файл в текущем рабочем каталоге? (Для ситуации с переменным путем.) - person Zuooo; 08.05.2021
comment
@Zuooo Я не уверен, что AppleScript имеет концепцию текущего рабочего каталога, но если вы запускаете pbpaste в оболочке, вы можете просто направить вывод в файл без пути, например: pbpaste > from_clipboard.txt - person fanaugen; 11.05.2021
comment
Он сообщил об ошибке Read-only file system, если путь не указан. @фанауген - person Zuooo; 12.05.2021