使用剪贴板时,Cygwin Curl'写入正文失败'错误

时间:2013-12-06 02:52:26

标签: curl cygwin

出乎意料的是,这个问题开始发生了。

这样的东西
curl www.cnn.com > /dev/clipboard 

结果

curl: (23) Failed writing body (0 != 16384)

错误23显然意味着文件或文件系统有问题。我能够导出到txt文件,它只是剪贴板。我已经使用了很长时间没有问题。我尝试重新安装Cygwin,但没有去。

我唯一能想到的是我最近将MySQL软件包添加到Cygwin,但我看不出它会对任何事情产生什么影响。

这是一个卷曲错误而不是Cygwin错误,因为剪贴板适用于诸如

之类的简单命令
echo 'hello' > /dev/clipboard

它似乎也不是一个分叉问题,因为以下命令也有效:

curl www.cnn.com > cnn.txt

我真的很茫然这个

谢谢

1 个答案:

答案 0 :(得分:0)

我将此报告为错误http://cygwin.com/ml/cygwin/2013-12/msg00198.html - 已在快照中修复,应在下一版本(2013-12-09之后)中处理。在平均时间你可以:

安装cygutils-extra并使用putclip.exe将内容放入剪贴板。我在win8.1机器上写/dev/clipboard时也遇到了问题(见下文)。

$ curl www.cnn.com > /dev/clipboard
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed
100 65371    0 65371    0     0   139k      0 --:--:-- --:--:-- --:--:--  141k
curl: (23) Failed writing body (0 != 1460)

但使用putclip有效:

$ curl www.cnn.com |putclip.exe 
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed
100  120k    0  120k    0     0   178k      0 --:--:-- --:--:-- --:--:--  189k

我刚开始遇到/ dev / clipboard问题: 这有效:

$ echo "test" > /dev/clipboard

现在尝试从一个文件:

$ echo test > /tmp/t
$ cat /tmp/t
test
$ cat /tmp/t > /dev/clipboard
cat: write error: Permission denied 

但putclip有效:

$ echo "test" >/tmp/t
$ cat /tmp/t |putclip.exe 
$ getclip.exe 
test

很奇怪,是吗?不确定何时出现这种情况。直到最近我才能重定向到/ dev / clipboard。

这是一个“cb”功能。如果0打开则调用getclip,否则调用putclip:

cb() { test -t 0 && getclip || putclip ; }

测试:

$ echo test2 | cb
$ cb
test2

所以只需管道cb函数,如果这样可以更容易。