Windows 7 viene con PowerShell 2.0 preinstalado y puedes usarlo para manipular directamente el portapapeles con Windows.Forms.Clipboard
(o Windows.Clipboard
en PresentationCore). Algunos ejemplos
Add-Type -AssemblyName PresentationCore
[Windows.Clipboard]::GetText()
$out = "some text"
[Windows.Forms.Clipboard]::SetText($out)
[Windows.Clipboard]::GetData([Windows.DataFormats]::UnicodeText)
[Windows.Clipboard]::GetData([Windows.DataFormats]::Html)
if ([Windows.Clipboard]::ContainsFileDropList()) {
$f = [Windows.Clipboard]::GetFileDropList()
Write-Host $f
}
if ($out)
{
[Windows.Clipboard]::SetText($out);
}
else
{
[Windows.Clipboard]::Clear();
}
La primera línea se puede cambiar a Add-Type -AssemblyName System.Windows.Forms
junto con algunas sustituciones:
[Windows.Clipboard]
→ [Windows.Forms.Clipboard]
[Windows.DataFormats]
→ [Windows.Forms.DataFormats]
Incluso puedes escribir un script de PowerShell con GUI para ver y editar el portapapeles. Afortunadamente ya hay una solución hecha aquí: Building a Clipboard History Viewer Using PowerShell
Hace algún tiempo vi una pregunta en el Foro de PowerShell de Technet preguntando cómo podría comenzar a construir un visor de portapapeles utilizando PowerShell que cumpliera con algunos requisitos:
- Tener una ventana abierta aparte de la consola de PowerShell
- Listar automáticamente los nuevos elementos del portapapeles a medida que lleguen
- Permitir filtrar para encontrar elementos específicos
También puedes descargar el script directamente desde MS Technet Gallery. Ten en cuenta que solo admite texto, por lo que tendrás que modificarlo si deseas incluir otros formatos de datos como imágenes o archivos
Otra solución para PowerShell 2.0 es el módulo ClipboardText que se puede instalar con Install-Module -Name ClipboardText
Set-ClipboardText "some text"
Get-ClipboardText
También está disponible en GitHub
Si tienes acceso a PowerShell 5.0 o superior, puedes usar los cmdlets integrados Get-Clipboard
y Set-Clipboard
directamente. Admiten no solo texto sino también otros objetos en el portapapeles. Algunos ejemplos
Get-Clipboard -Format Text -TextFormatType Html
Get-Clipboard -Format FileDropList
(Get-Clipboard -Format FileDropList)[0].GetType()
Ver también Cosas Nuevas - Get-Clipboard y Set-Clipboard - Nuevas en PowerShell 5.0
También hay varias aplicaciones portátiles para la manipulación del portapapeles
0 votos
Visor de Portapapeles Gratis v3.0
0 votos
Sé que esta es una pregunta antigua, pero ¿a qué te refieres exactamente con la "carpeta del portapapeles" y "abrir el portapapeles"? ¿Solo necesitas ver el contenido del portapapeles?