它是可能的管道到/从剪贴板在Bash?

无论是连接到设备手柄还是使用辅助应用程序,我都找不到任何东西。

例如,如果/dev/clip是一个连接到剪贴板的设备,我们可以这样做:

cat /dev/clip        # Dump the contents of the clipboard
cat foo > /dev/clip  # Dump the contents of "foo" into the clipboard

当前回答

对于mac,你可以使用这个函数,它使用pbcopy和pbpaste,但更简单:

将此添加到你的.bashrc或.zshrc:

clp() {
  if [[ -z "$1" ]]
  then
    # No input - act as paste
    pbpaste;
  else
    # Input exists - act as copy
    echo "$1" | pbcopy;
  fi
}

复制使用clp“Content”,粘贴使用clp

其他回答

你可以使用大量的剪贴板。我想你可能是一个Linux用户,想把东西放到X Windows主剪贴板中。通常,您想要与之对话的剪贴板有一个实用程序可以让您与之对话。

在X的情况下,有xclip(和其他)。xclip -selection c将数据发送到剪贴板,在大多数应用程序中使用Ctrl + c, Ctrl + V。

如果你在Mac OS X上,有pbcopy。例如,cat example.txt | pbcopy

如果你在Linux终端模式下(没有X),那么查看有剪贴板的gpm或Screen。试试Screen命令readreg。

在Windows 10+或Cygwin下,使用/dev/clipboard或clip。

确保使用别名xclip="xclip -selection c" 否则你将无法使用Ctrl+v进行粘贴。

例子: 执行echo -n test | xclip命令后,Ctrl+v将粘贴test

几年前我写的几个Windows程序。它们允许您转储,推送,追加和打印剪贴板。它是这样工作的:

dumpclip | perl -pe "s/monkey/chimp/g;" | pushclip

它包括源代码:cmd_clip.zip

复制和粘贴到剪贴板在Windows (Cygwin):

See:

$ clip.exe -?

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.

还有getclip(它可以代替Shift + Ins!)和putclip (echo oeuoa | putclip.exe将其放入clip)存在。

在这个线程中,有一个选项不需要安装任何gclip/xclip/xsel第三方软件。

Perl脚本(因为通常总是安装Perl)

use Win32::Clipboard;
print Win32::Clipboard::GetText();