Как автоматически вводить содержимое буфера обмена с хоста в гостевой экземпляр Virtual Box?

Как автоматически вводить содержимое буфера обмена с хоста в гостевой экземпляр Virtual Box?

В случае, когда общий доступ к буферу обмена невозможен, поскольку есть только консоль и нет графического интерфейса.

решение1

Можно сделать это сAutoHotKeyнахост windows.

Я написал этот скрипт, который отправляет содержимое буфера обмена, как только вы нажимаете Win+ v.

Сохранить как sendClipboard.ahk:

; win + v
#v::
  SendRaw %clipboard%

Если вы установили AutoHotKey, вы можете запустить его, дважды щелкнув по файлу. В области уведомлений на панели задач появится значок «H».

Теперь вы сможете использовать Win+ vдля отправки содержимого буфера обмена в виде текста в активное окно.

ПРИМЕЧАНИЕ: не забудьте нажать клавишу HOST, обычно правую Ctrl, чтобы вернуть фокус на хост-систему, прежде чем использовать Win+ v.

ПРЕДУПРЕЖДЕНИЕСкрипт простой и ненетпопытаться защитить вас от вставки, например, больших данных изображения из буфера обмена в виде текста... поэтому для их использования вам необходимо понимать и знать, что вы делаете.

решение2

Если вы не можете установить гостевые дополнения для общего доступа к буферу обмена, вам необходимо создать скрипт на хостовой ОС, который сохраняет текст буфера обмена в файле в общей папке. На гостевой ОС вам необходимо создать скрипт, который считывает любой новый файл в общей папке и печатает содержимое текстового файла.


старый, ложный ответ(может быть еще полезно другим)

Чтобы включить общий доступ к буферу обмена между гостевой ОС и хостовой ОС, вам необходимо установить гостевые дополнения (Как включить общий буфер обмена в VirtualBox?).

Затем вам нужно запустить скрипт на гостевой ОС, который прослушивает изменения буфера обмена. Если вы используете Windows, вы можете сделать что-то подобное с помощьюAutoHotkey. Скрипт будет вводить содержимое буфера обмена как текст при изменении содержимого буфера обмена.

Для Mac вам также придется использовать макропрограмму вроде Keyboard Maestro или iKey. А для Linux какой-то непонятный инструмент командной строки, для понимания которого требуется степень инженера-программиста.

Связанный контент