Поиск по сайту:

Set-Clipboard (Microsoft.PowerShell.Management)


Set-Clipboard

Модуль:
Microsoft.PowerShell.Management

Устанавливает содержимое буфера обмена.

Синтаксис

Set-Clipboard
   [-Value] <string[]>
   [-Append]
   [-PassThru]
   [-AsOSC52]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Описание

Командлет Set-Clipboard устанавливает содержимое буфера обмена.

Примечание

В Linux этот командлет требует, чтобы в пути была утилита xclip.

Примеры

Пример 1. Копирование текста в буфер обмена.

Set-Clipboard -Value "This is a test string"

Пример 2. Копирование содержимого файла в буфер обмена.

В этом примере содержимое файла (публичный ssh-ключ) передается в буфер обмена. Затем ключ можно вставить в другое приложение, например GitHub.

Get-Content C:\Users\user1\.ssh\id_ed25519.pub | Set-Clipboard

Пример 3. Копирование текста в буфер обмена локального хоста через удаленный сеанс SSH.

Параметр AsOSC52 позволяет настроить буфер обмена локального компьютера при подключении к удаленному сеансу через SSH.

Set-Clipboard -Value "This is a test string" -AsOSC52

Пример 4. Установите значение по умолчанию для параметра **AsOSC52**.

Вы можете определить, подключены ли вы к удаленному сеансу через SSH, проверив значение переменных среды $env:SSH_CLIENT или $env:SSH_TTY. Если какая-либо из этих переменных установлена, вы подключены к удаленному сеансу через SSH. Эту информацию можно использовать для установки значения по умолчанию для параметра AsOSC52. Добавьте одну из следующих строк в скрипт профиля PowerShell.

$PSDefaultParameterValues['Set-Clipboard:AsOSC52'] = $env:SSH_CLIENT
$PSDefaultParameterValues['Set-Clipboard:AsOSC52'] = $env:SSH_TTY

Дополнительную информацию о $PSDefaultParameterValues см. в разделе about_Parameters_Default_Values.

Параметры

-Append

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

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

-AsOSC52

При подключении к удаленному сеансу через SSH Set-Clipboard устанавливает буфер обмена удаленного компьютера, а не локального хоста. При использовании этого параметра Set-Clipboard использует escape-последовательность OSC52 ANSI для установки буфера обмена локального компьютера.

Чтобы эта функция работала, ваше терминальное приложение должно поддерживать escape-последовательность OSC52 ANSI. Терминал Windows поддерживает эту функцию.

Этот параметр был добавлен в PowerShell 7.4.

Тип :

SwitchParameter

Псевдонимы:

ToLocalhost

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

-Confirm

Запрашивает подтверждение перед запуском командлета.

Тип :

SwitchParameter

Псевдонимы:

cf

Позиция:

Именованный

Значение по умолчанию:

False

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

-PassThru

Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не генерирует никаких выходных данных.

Тип :

SwitchParameter

Позиция:

Именованный

Значение по умолчанию:

False

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

-Value

Строковые значения, которые будут добавлены в буфер обмена.

Тип :

String[]

Позиция:

Именованный

Значение по умолчанию:

None

Необходимый:

True

Примите ввод конвейера:

True

Принимайте подстановочные знаки:

False

-WhatIf

Показывает, что произойдет, если командлет запустится. Командлет не запускается.

Тип :

SwitchParameter

Псевдонимы:

wi

Позиция:

Именованный

Значение по умолчанию:

False

Необходимый:

False

Примите ввод конвейера:

False

Принимайте подстановочные знаки:

False

Входы

Строка

Вы можете передать в этот командлет строку, содержащую содержимое, которое нужно поместить в буфер обмена.

Выходы

Нет

Этот командлет не возвращает никаких результатов.

Примечания

PowerShell включает следующие псевдонимы для Set-Clipboard:

  • Все платформы:

      scb

Поддержка этого командлета в macOS была добавлена в выпуске PowerShell 7.0.0.