Board logo

标题: xclip 操作剪贴板工具(AHK实现) [打印本页]

作者: CrLf    时间: 2014-7-25 16:36     标题: xclip 操作剪贴板工具(AHK实现)

完全兼容系统自带 Clip.exe 的功能与习惯,并在此基础上增加了一些新的用途
20160222 修复了读取重定向输入的Bug
exe程序:http://bcn.bathome.net/s/tool/index.html?key=xclip
AHK源码:
链接: https://pan.baidu.com/s/1y8J0SFsLpAUsoPw35T7y7g?pwd=3q9q
没什么复杂的用法,帮助应该写得很清楚了:
xclip (20160222)  by  http://bbs.bathome.net  CrLf

描述:
    将命令行工具的输出重定向到 Windows 剪贴板,或从剪贴板获取输入。
    这个文本输出可以被粘贴到其他程序中。

参数列表:
    /?                 显示此帮助消息。

    /Set              (默认)将命令行工具的输出重定向到 Windows 剪贴板。

    /Copy             将命令行工具输出中列举的文件复制到剪贴板。

    /Cut              将命令行工具输出中列举的文件剪切到剪贴板。

    /Get               从剪贴板获取输入。

    /Clean             清空剪贴板的内容。

    /Wait              等待直到剪贴板不为空,此开关有两个可选参数:

                       第一个参数:如果省略, 此命令将无限期等待,
                                   否则它将等待不超过这个秒数的时间

                       第二个参数:如果省略此参数, 则明确地等待文本或文件
                                   如果此参数为 1,会等待任何类型的数据

示例:
    DIR | xclip                将一份当前目录列表的副本放入 Windows 剪贴板。

    xclip < README.TXT         将 readme.txt 的一份文本放入 Windows 剪贴板。

    echo *.txt | xclip /Copy   将当前路径下所有 txt 文件复制到 Windows 剪贴板。

    dir /b *.txt | xclip /Cut  将当前路径下所有 txt 文件剪切到 Windows 剪贴板。

    xclip /Get                 输出 Windows 剪贴板中的文本。

    xclip /Clean               清空剪贴板的内容。

    xclip /Wait 60 1           等待直到剪贴板中出现任何改变,最多 60 秒。

作者: 懒得勤快    时间: 2015-2-12 12:11

回复 1# CrLf
作者: ohawang945    时间: 2016-2-18 12:15

怎么下载的是损坏文件呢
作者: CrLf    时间: 2016-2-20 01:32

回复 3# ohawang945


    win7 下载解压并运行,测试无误
作者: ivor    时间: 2016-2-20 09:47

回复 4# CrLf


无法结束程序,一直等待
作者: CrLf    时间: 2016-2-20 11:35

回复 5# ivor


    什么系统环境?
作者: ivor    时间: 2016-2-20 11:56

windows7 64位
作者: CrLf    时间: 2016-2-20 12:18

回复 7# ivor


    那我系统和你是一样的…
作者: wskwfkbdn    时间: 2016-2-22 07:41

看源码上面,读取管道数据貌似分配了是4095的内存,如果数据大于这个内存的数据,会不会导致获取不完整,未测试,询问一下。
作者: CrLf    时间: 2016-2-22 13:46

回复 9# wskwfkbdn


    与那无关,这只是用来存储 ReadFile 读取的一截内容,以便过渡到 AHK 内的变量:
  1.     while (DllCall("ReadFile", Ptr, hStdIn, Ptr, &sText, UInt, piMaxChars, PtrP, nSize, Ptr, 0))
  2.         sRetVal .= StrGet(&sText, nSize, psEncoding)
复制代码
但是变量长度确实有上限: #MaxMem 4000,相当于单个变量只能保存 4000MB 的内容,这个限制对 32位程序而言是没有影响的
作者: wskwfkbdn    时间: 2016-2-22 14:00

回复 10# CrLf

只需要1024就行啦
作者: CrLf    时间: 2016-2-22 14:55

回复 5# ivor


    已修复
作者: Thorne    时间: 2016-6-1 15:22

说实在的这个工具帮了我大忙了 谢谢大大
作者: hxhxno    时间: 2018-8-18 17:57

百度搜索过来的 刚学到用 多谢!
作者: yeren86125    时间: 2021-11-20 14:12

支持支持..好东西
作者: williamzlj    时间: 2022-7-24 14:24

回复 1# CrLf
这个工具在win11下面无法使用了, 可能调用的库不被支持了, 楼主要是能更新一下就好啦
作者: CrLf    时间: 2022-7-26 23:01

回复 16# williamzlj


    我可以用呀,有什么提示吗?




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2