|
本帖最后由 youhun200 于 2023-12-28 11:53 编辑
* C, _# `0 c3 a& t8 _3 ]5 I, l! c- h$ v- {) U7 N
这个小程序是根据自己工作需要编写的,很简单,就是在跳出的list.txt里列出你要复制的文件名(可以不写后缀名),由上至下写入,然后按提示创建文件夹或已有文件夹,检索后会弹出一个搜索到的文件清单,以供编辑。保存后回车,文件就全复制你指定的文件夹里了。下面我把代码复制过来,仅供参考。(360会有提示,若不放心可以分析代码,绝不会有损害系统的执行代码)就当是一种娱乐吧
6 w) f% b6 M! H- p8 f M@echo off
1 p- J. G' m' s" ltitle 文件批量检索复制* l; y8 f4 N* d/ |
color 1e- a$ P e" Y- B! s# q7 j1 w% P& j
:stad
. Y! a7 \6 `. P, B6 kif not exist list.txt goto exd: Y9 D8 o l# q- E
cls
2 a% ]* X4 i+ e/ V# u5 a& J) K@echo.; o0 k4 l' E- F5 n) {: O% c& i
set/p ph= ● 输入创建文件夹的名称或已有文件夹名(空输入无效):
# S( _% C: s1 |! Wif "%ph%"=="" goto stad% Z7 N1 E( O& x3 @, x
if exist "%ph%" goto menu* _) g* u0 x+ q) O( }" Z
md "%ph%" ) `; n2 O8 @0 \$ F/ x6 d
:menu
, y6 P! F. s3 E# Y+ @7 jcls
, `- D, }& c: pmshta vbscript:msgbox("在文本中输入需要搜索的文件列表, 保存并回车,单击确定",64,"提示")(window.close)
, G4 D7 M' _) ?1 y8 Plist.txt
, R/ d4 x' y' H8 S& Ofindstr /rc:"." /rc:" " list.txt|| goto ens% s. r; B" ~ Z0 u% H5 Y7 u
cls$ ?1 j: d/ x7 p- {# e7 X
@echo.
9 V* S% Q) `- R7 Y4 {4 W4 i@echo 回车继续......
0 p4 V3 K9 |: dpause >nul6 n- _7 C2 O* g9 q0 w
cls% c8 z2 |3 i5 A$ q
@echo.
# W3 i' R& X6 ]@echo 正在搜索文件,稍候......
, p3 M. k* P$ G: b0 Rfor /f "tokens=1*" %%f in (list.txt) do dir/s/a/b \*"%%f"* >>lise.txt
8 e/ T h8 H3 j- a/ c7 Acls$ U. u; f' `1 t( y% c
@echo.
8 B- D/ ]1 s0 s8 i5 ^cls
$ w2 o/ H# g/ [% O2 V3 A9 xfindstr /rc:"." /rc:" " lise.txt|| goto err
0 U6 @4 Z% i- W+ ycls
1 K; W1 Y }# N! ]mshta vbscript:msgbox("查阅并编辑搜索到的文件列表, 保存并回车,单击确定",64,"提示")(window.close)
' z0 J A l0 {2 i: L, o+ Ulise.txt1 W" r) t6 m# M) V6 J
@echo.. w2 G% ~2 U: W; u9 @- [: r) |
@echo 回车继续......
0 e5 E* E ^: Q" b( K! ?' R: |. t! hpause >nul
8 I/ l; ^6 \1 g; F- ^cls8 A2 {- x) }3 G! e9 a+ t: v
findstr /rc:"." /rc:" " lise.txt|| goto erx" j( X% l ~8 s4 y4 W( f4 P5 R
cls8 G9 b! R* P1 Y. L
for /f "tokens=1* delims=" %%f in (lise.txt) do copy/y "%%f" "%ph%" >nul 2>nul& Q+ P/ _2 [* {" U2 ~0 s
cls
2 a! s% S% ?: ~1 |5 D@echo.
6 \" T. C$ Q8 C+ k ^set cnt=0
* `% ~) `2 G1 e& g1 m4 k" S" bfor /f "delims=" %%i in ('dir/b/a-d "%ph%" 2^>nul') do (set /a cnt+=1
# Z/ ]7 `- d7 M)
! U2 c6 r7 B" u7 Wif defined cnt (set inf=共搜索到【%cnt%】个文件.) else echo,NO find files.' k- X1 L: U2 w8 e
del/q lise.txt >nul9 w' E, c7 B% v# w
mshta vbscript:msgbox("%inf%"^&vbCr^&vbCr^&"复制完成! 单击确定退出",64,"提示")(window.close)2 ?5 B; s4 u/ R: E4 G3 O$ N
explorer.exe %ph%! K% C4 o6 M7 ~: }/ V O+ g
exit# j+ Q$ X0 D$ n7 ~2 U' U+ }
:exd: V: m2 I& l8 f
cls
5 v: w0 U" j5 m. ?; F |@echo. >list.txt
6 d$ c' \* i |8 ^' o: ]cls) y5 F# a/ F% F4 G, a- ]6 W
mshta vbscript:msgbox("【list.txt】文本已创建,单击确定,继续操作.",64,"提示")(window.close)( |. c# @: p# Y# ?" u
cls
9 ~9 b4 o8 j' t* w( }goto stad
, G$ x2 ~$ p& p0 B0 _8 f4 g" o:ens
; X i$ W4 E* L5 Y; G0 ?: icls: M& h$ l, N$ x# Q1 W3 p
mshta vbscript:msgbox("文本不能为空,单击确定,继续操作. ",16,"错误提示")(window.close)9 E0 Y6 N; v/ @
if not exist list.txt goto exd7 S' D) |, p; `3 o& ^+ W% h% z4 j1 T
goto menu
% a9 \0 k1 [; ` n( @: {7 T:err
, D; a9 ~( r% `* Dcls
; u' u4 ^" B! Fmshta vbscript:msgbox("没有搜索到你要的文件,单击确定退出",64,"提示")(window.close)
. @# o9 a& Q. Lexit! Y: U& l" W8 X2 d2 H
:erx$ H; v1 L$ V% g7 O
cls, q2 n" a3 v) k& ~6 r
del/q lise.txt >nul
4 L3 O: _9 ]5 x( q, rmshta vbscript:msgbox("没有搜索到你要的文件,单击确定退出",64,"提示")(window.close)
8 K8 D1 @( g% x7 p$ A( O. w8 uexit 1 L3 e% `5 k v$ L
差点忘了,用记事本粘贴后,自己起名,后缀名写为bat或cmd
" o3 {4 Z: u* o0 e$ v1 l7 n; {" s# {3 N$ y
|
评分
-
查看全部评分
|