次の方法で共有


Set-Clipboard

クリップボードの内容を設定します。

構文

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

説明

Set-Clipboard コマンドレットは、クリップボードの内容を設定します。

Note

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** パラメーターの既定値を設定する

$env:SSH_CLIENTまたは$env:SSH_TTY環境変数の値を確認することで、SSH 経由でリモート セッションに接続されているかどうかを検出できます。 これらの変数のいずれかが設定されている場合は、SSH 経由でリモート セッションに接続されます。 この情報を使用して、 AsOSC52 パラメーターの既定値を設定できます。 PowerShell プロファイル スクリプトに次のいずれかの行を追加します。

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

$PSDefaultParameterValuesの詳細については、「about_Parameters_Default_Values」を参照してください。

パラメーター

-Append

コマンドレットを置き換えるのではなく、クリップボードに追加する必要があることを示します。 既定では、コマンドレットはクリップボードから現在のコンテンツをクリアし、新しいコンテンツに設定します。 このパラメーターを指定すると、コマンドレットは改行の後に新しいコンテンツを現在のコンテンツに追加します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-AsOSC52

SSH 経由でリモート セッションに接続すると、 Set-Clipboard はローカル ホストではなく、リモート コンピューターのクリップボードを設定します。 このパラメーターを使用する場合、 Set-Clipboard は OSC52 ANSI エスケープ シーケンスを使用してローカル コンピューターのクリップボードを設定します。

この機能を機能させるには、ターミナル アプリケーションが OSC52 ANSI エスケープ シーケンスをサポートしている必要があります。 Windows ターミナルでは、この機能がサポートされています。

このパラメーターは PowerShell 7.4 で追加されました。

型:SwitchParameter
Aliases:ToLocalhost
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PassThru

作業中のアイテムを表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。

型:SwitchParameter
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Value

クリップボードに追加する文字列値。

型:String[]
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 コマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

コンテンツを含む文字列をパイプ処理して、クリップボードに設定してこのコマンドレットに設定できます。

出力

None

このコマンドレットは、出力を返しません。

メモ

PowerShell には、 Set-Clipboardの次のエイリアスが含まれています。

  • すべてのプラットフォーム:
    • scb

macOS でのこのコマンドレットのサポートは、PowerShell 7.0.0 リリースで追加されました。