中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 20:52
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 能不能获取剪贴板里的信息进行搜索 查看 898 回复 8
楼 主 能不能获取剪贴板里的信息进行搜索 发表于 2008-03-24 10:24 ·  中国 广东 潮州 电信
新手上路
积分 10
发帖 4
注册 2008-03-24 09:04
18年会员
UID 113843
性别 男
状态 离线
在这潜了几天,我想做的批处理还是没做出来。太笨了。
1,怎么获取剪贴板内数字信息,我见有个批处理是自动新建一个txt,粘帖保存,然后在txt里找到数据进行的,提取数据后就删除txt。有没有直接提取剪贴板的?
2,我是在技校负责网站咨询的,每天都有很多学生邮件问我开学时间(每隔10天就有一次开学),而招生办给我的数据只有他们身份证号码的分组,如4月1日汽修班的报道,他们的身份证号码就写在qx20080401的txt里,我每天根据身份证号码搜索到的文档进行判断专业和开学时间回复给学生。现在每天查询的电子邮件越来越多,怎么实现将搜索目录下所有的txt文件,结果直接判断成报道的时间,生成可复制的文本,以便直接回复给学生,
2 发表于 2008-03-24 12:49 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
第一个问题:不知道你要实现什么目的,按你的描述来猜,根本不需要访问剪贴板。
第二个问题:把qx20080401.txt的内容贴一部分出来看看。
3 发表于 2008-03-24 13:09 ·  中国 海南 海口 电信
新手上路
积分 10
发帖 4
注册 2008-03-24 09:04
18年会员
UID 113843
性别 男
状态 离线
qx20080401.txt 的内容是一行一行的身份证号码, 身份证号码我就不便帖出来


我是查询身份证号码所在的TXT文件,而判断出他们的开学日期



之所以需要用剪贴板 身份证号码长达18位 手动输入经常出错,一般都是复制

[ Last edited by xuquan911 on 2008-3-24 at 01:11 PM ]
4 发表于 2008-03-24 13:20 ·  中国 海南 海口 电信
新手上路
积分 10
发帖 4
注册 2008-03-24 09:04
18年会员
UID 113843
性别 男
状态 离线
我想实现的效果

运行批处理后 直接读取我剪贴板内已复制的身份证号码,

根据获取身份证号码 去搜索号码所在的TXT文件,

然后根据找到的TXT文件名,转化出日期 以及专业 如一楼提的 "QX20080401.TXT" 就转成 "汽修 2008年4月1日报道"

最后生成为被复制的文本内容,或者用该内容直接覆盖以前的剪贴板

(当我收到查询开学时间的邮件时,我只要复制他的身份证号码,运行批处理后,粘贴出来的就是他的 身份证号码以及开学时间和专业)

[ Last edited by xuquan911 on 2008-3-24 at 01:22 PM ]
5 发表于 2008-03-24 16:01 ·  中国 广东 深圳 联通
新手上路
积分 8
发帖 4
注册 2008-03-24 15:20
18年会员
UID 113867
性别 男
状态 离线
谢谢楼主分享
6 发表于 2008-03-24 17:07 ·  中国 上海 联通
初级用户
★★
积分 153
发帖 68
注册 2006-10-12 22:25
19年会员
UID 65507
来自 上海
状态 离线
BAT不行,要用VBS
个人主页-找餐厅:http://www.canting.cc
7 发表于 2008-03-24 17:39 ·  中国 北京 华为云
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
第三方工具

winclip.exe
8 发表于 2008-03-24 20:58 ·  中国 江苏 常州 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
BAT只能做到提取 覆盖剪贴版可能不行哦 还是动一下鼠标吧
@echo off
set /p str=请输入(粘贴)号码:
set qx=汽修
for /f %%i in ('dir /b /s /a-d *.txt 2^>nul') do (
findstr /ic:"%str%" "%%i" >nul 2>nul&& call :lp "%%~ni"
)
>%temp%\tmp_.txt call echo %%%var:~0,2%%%%%var:~2,4%% 年 %%var:~6,2%% 月 %%var:~8,2%% 日报到
start "" "%temp%\tmp_.txt"
pause
del "%temp%\tmp_.txt"
goto :eof
:lp
if not defined %~1 set %~1=a&set var=%~1
简单!简单!再简单!
9 发表于 2008-03-25 20:58 ·  中国 海南 海口 电信
新手上路
积分 10
发帖 4
注册 2008-03-24 09:04
18年会员
UID 113843
性别 男
状态 离线
谢谢了 很好用
论坛跳转: