Cómo canalizar texto desde la línea de comando al portapapeles


34

Me gustaría hacer algo como

dir *.* > clipboard

es decir. obtener la salida estándar de un programa de línea de comandos copiada al portapapeles. ¿Se puede hacer esto en una máquina XP estándar sin programas adicionales?


77
Solo para los archivos: los equivalentes de Mac OS X se llaman pbcopyy pbpaste.
Arjan

superuser.com/questions/231023/... menciona petri.co.il/software/clip.zip que es aparentemente en el servidor Windows 2003 o el Kit de recursos de 2003 tal vez. Pero ahí está para descargar
barlop

Respuestas:


31

No lo creo, Vista (o NT4) introdujo la clipherramienta, que haría su comando como dir | clip, pero no hay nada en XP. Sin embargo, si está dispuesto a usar aplicaciones de terceros, existe esto , que funciona como anteriormente, excepto que se llama cb, no clip.


2
Como nota histórica, el enlace de Arjan a la nota de soporte de MS hace referencia a NT4. pero probablemente tenga razón en que las versiones para consumidores de Windows no incluían clip.exe antes de Vista.
quack quijote

Oh, bastante justo. ¡Nunca tenga la oportunidad de perder el tiempo en las máquinas de negocios! :(
Phoshi

Si te sirve de consuelo, me perdí por completo toda la diversión de Windows NT 3.51. y no era fanático de NT en absoluto hasta que pude jugar con 2000 por un tiempo.
quack quijote

18

Para Windows y no Windows, esta publicación (enlace muerto) solía decir:

En Windows Vista o posterior, intente: echo hello | clip

En Linux, intente: echo hello | xclip

En Mac OS X, intente: echo hello | pbcopy

Por ejemplo, podrías hacer (cat myFile.txt | xclip). Básicamente, esto le permitirá editar el portapapeles directamente.

(Vine aquí a través de Google buscando el equivalente Mac de xclip)

Del mismo modo para el contenido de los archivos (como no lo hace caten Windows):

type filename | clip  % OR clip < filename   %windows
cat filename | xclip  # OR xclip < filename  # X11 / Unix / Linux
cat filename | pbcopy # OR pbcopy < filename # MacOS X

1
El enlace de arriba ahora arroja un 500. Para aquellos de ustedes que no estén familiarizados pbcopy, <kbd> Command </kbd> + <kbd> V </kbd> no se pega: debe escribir (o alias a algo más corto) pbpaste.
eebbesen

6

Investigué esto por mí mismo hoy temprano. A continuación hay algo útil para aquellos que desean insertar y recuperar información del portapapeles en una distribución de Linux. Debajo de eso hay algo que podría resultar útil para aquellos con ventanas.

Linux

Por defecto, xclip usa el portapapeles "primario", que es lo que ha copiado con el mouse. Para que use el portapapeles de copia manual, use xclip -sel clip en su lugar.

comentario # 3 aquí:
http://ubuntuforums.org/showthread.php?t=413786

Ventanas

La funcionalidad también está disponible en la distribución Active Perl, que es lo que terminé usando en el cuadro de Windows en este ejercicio; Windows clip.exe no parecía permitir leer los datos del portapapeles (solo escribir en el portapapeles).

http://www.xav.com/perl/site/lib/Win32/Clipboard.html


Como ha mencionado a Perl, me gustaría agregar que Ruby y Python también proporcionan una biblioteca similar.
débil

4

No hay una forma estándar, pero aparentemente puede usar la clip.exeque viene con el kit de recursos de Windows Server 2003. Fuente

El problema ahora es conseguir una copia legal de esto.


Me pregunto qué tan legal es eso. Me pregunto, ¿qué tipo de licenciamiento ponen MS en sus pequeñas herramientas cli?
Phoshi

1
También estaba disponible en el kit de recursos NT 4 y Server 2000 si tiene alguno de los disponibles. No parece estar disponible en el subconjunto de descarga gratuita de las herramientas 2000 RK.
AdamV


1

En PowerShell , se puede hacer así:

dir *.* | clip

1
Como comentario adicional, consulte "Clip.exe no compatible con el Bloc de notas" en support.microsoft.com/kb/172596
Arjan

2
Ese enlace no es relevante para PowerShell. Lo he probado y todo funciona bien con el Bloc de notas.
Mark

Puedo confirmar que esto funciona en XP, SI un Server 2003 clip.exe está en su ruta. También funciona en un indicador CMD estándar
Shevek,

1
clip es solo una herramienta externa, por lo que funcionará en cualquier consola, no solo en
PowerShell

0

A partir de Windows Vista y posterior, DOS tiene un comando de clip incorporado :

CLIP

Description:
    Redirects output of command line tools to the Windows clipboard.
    This text output can then be pasted into other programs.

Parameter List:
    /?                  Displays this help message.

Examples:
    DIR | CLIP          Places a copy of the current directory
                        listing into the Windows clipboard.

    CLIP < README.TXT   Places a copy of the text from readme.txt
                        on to the Windows clipboard.

-1

Si está utilizando cygwin en Windows (por ejemplo, git para windows). Es mejor volcar el contenido en un archivo temporal, luego 'unix2dos' el archivo temporal antes de realmente canalizar a 'clip'


¡Bienvenido a Super User! Por favor lea la pregunta otra vez cuidadosamente. Su respuesta no responde a la pregunta original. clipno existe en Windows XP.
DavidPostill
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.