How to pipe text from command line to the clipboard
I don't believe so - Vista (or NT4) introduced the clip
tool, which would do your command as dir | clip
- but there's nothing on XP. If you're willing to use 3rd party applications, though, there's this, which works as above, except is called cb
, not clip.
For Windows and non-Windows, this post (dead link) used to say:
On Windows Vista or later, try:
echo hello | clip
On Linux, try:
echo hello | xclip
On Mac OS X, try:
echo hello | pbcopy
For example, you might do
(cat myFile.txt | xclip)
. This would basically allow you to edit the clipboard directly.
(I came here via Google looking for the Mac equivalent of xclip
)
Similarly for contents of files (as you don't cat
on 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
I looked into this for myself earlier today. Below is something helpful to those wanting to insert and retrieve information from the clipboard in a linux distribution. Below that is something that could prove helpful for those with windows.
Linux
By default, xclip uses the "primary" clipboard, which is what you have copied with your mouse. To get it to use the manual copy clipboard, use xclip -sel clip instead.
comment #3 here:
http://ubuntuforums.org/showthread.php?t=413786
Windows
The functionality is available in Active Perl distribution also, which is what I wound up using on the windows box in this exercise; The windows clip.exe didn't appear to allow for reading the data from the clipboard (only writing into clipboard).
http://www.xav.com/perl/site/lib/Win32/Clipboard.html