|
本帖最后由 youhun200 于 2023-12-28 11:53 编辑
% z$ o# }! {9 O% G' `( S
I1 x9 W7 Q" i! {6 s" n这个小程序是根据自己工作需要编写的,很简单,就是在跳出的list.txt里列出你要复制的文件名(可以不写后缀名),由上至下写入,然后按提示创建文件夹或已有文件夹,检索后会弹出一个搜索到的文件清单,以供编辑。保存后回车,文件就全复制你指定的文件夹里了。下面我把代码复制过来,仅供参考。(360会有提示,若不放心可以分析代码,绝不会有损害系统的执行代码)就当是一种娱乐吧
/ }1 n c& T% e$ }. P: o@echo off- X0 @8 n6 N) _. ?; E) x" m) I
title 文件批量检索复制7 U5 J# f$ d0 p
color 1e
7 v% R' E; e5 c( r3 L' F5 m( S:stad) M5 s; e7 Y- P$ h
if not exist list.txt goto exd
9 P: }$ v8 P! B( \4 ?" ~cls' {/ D# k# ~9 ~+ m' u& r' n; o
@echo.
# ^: v8 t" i/ g7 c% ~$ E: Pset/p ph= ● 输入创建文件夹的名称或已有文件夹名(空输入无效):! y& y0 l5 Z, k2 W
if "%ph%"=="" goto stad
. {4 s' w+ v, N! e; P$ Wif exist "%ph%" goto menu
' Q9 B, M: }8 Z+ ]4 C+ _md "%ph%" - x2 j" p3 K0 f; E7 @3 U5 Z
:menu
/ B( W! @) k/ C+ \cls, R, K( t7 i0 J& U% Q
mshta vbscript:msgbox("在文本中输入需要搜索的文件列表, 保存并回车,单击确定",64,"提示")(window.close)% U! n$ ^8 B' Z7 Q+ Z5 [
list.txt
8 o* R4 b. a b, s' M8 \! [findstr /rc:"." /rc:" " list.txt|| goto ens; P" X/ Q1 n: t
cls
. g- [- ]4 w* H" w% _@echo.
( O+ G( x! q! r+ V@echo 回车继续......5 k) h5 B5 y3 l' g# x D2 M
pause >nul
v3 K+ _; o# h0 qcls
4 T" q* W6 p1 J" c' d/ M@echo.+ ~! c5 P& X& j; X7 D
@echo 正在搜索文件,稍候......( B$ x2 O! y. S0 A# o) F% w( W( ]. b
for /f "tokens=1*" %%f in (list.txt) do dir/s/a/b \*"%%f"* >>lise.txt ( I% c# n, x/ ?& w
cls
- \& \# X5 f+ `1 X9 g3 ?@echo.1 [) {4 t: y* o" r. P) `2 o9 {8 h
cls. c" M/ V* J# Z b
findstr /rc:"." /rc:" " lise.txt|| goto err& Y6 ^( U& @7 k! I
cls
5 R9 b" h, v9 o& Xmshta vbscript:msgbox("查阅并编辑搜索到的文件列表, 保存并回车,单击确定",64,"提示")(window.close)! y6 t# `3 U3 I/ _9 B2 g
lise.txt
. Y* R2 k9 t% G* Y@echo.( D& p! r7 n9 q$ \
@echo 回车继续...... W7 X. N4 \6 N [* P" ?
pause >nul6 C$ g$ H5 z1 B1 O) l
cls* x5 W; v+ T, V0 L
findstr /rc:"." /rc:" " lise.txt|| goto erx
+ i) y0 G6 ~. J" k) Lcls I) S* y* Q7 l" Q
for /f "tokens=1* delims=" %%f in (lise.txt) do copy/y "%%f" "%ph%" >nul 2>nul$ `4 W/ O( K' q
cls% l* u* X; o; j- k) K
@echo./ r! K1 `. {- g( s
set cnt=0( G& k8 a- F; f0 T V
for /f "delims=" %%i in ('dir/b/a-d "%ph%" 2^>nul') do (set /a cnt+=1! Q5 V- L& N4 b b9 r
)# f6 Z- Y/ z# v, {1 \8 A
if defined cnt (set inf=共搜索到【%cnt%】个文件.) else echo,NO find files.
# s" q$ ?2 c' E) Y) ]del/q lise.txt >nul
2 N! A2 d0 \0 f: ^ z9 d- V5 n( d% tmshta vbscript:msgbox("%inf%"^&vbCr^&vbCr^&"复制完成! 单击确定退出",64,"提示")(window.close)
2 ?2 \/ v, y4 ]- T! ^# V, n' ]* Xexplorer.exe %ph%
$ t! S: O7 j* G1 @+ V/ ^& l5 ^exit
/ k6 _' y5 q; y6 M:exd
# }$ l; \% l& k# ~cls# y( B. m# N9 p! Q- J
@echo. >list.txt$ z S! V& l7 z' f% ~+ e3 @
cls' ]- [& w0 g x) n8 Y* V
mshta vbscript:msgbox("【list.txt】文本已创建,单击确定,继续操作.",64,"提示")(window.close)
0 M3 F* g9 W* T/ o) l+ S/ zcls
z7 w7 Y& J+ t# x4 Egoto stad" O9 L! ] i* }/ a4 f
:ens+ J. ~0 O1 }$ i% l0 w8 e: r
cls
! @/ E+ N! Y8 X4 rmshta vbscript:msgbox("文本不能为空,单击确定,继续操作. ",16,"错误提示")(window.close)# _% y$ r, F# |9 S$ y
if not exist list.txt goto exd
; Z$ y. H: n, i% J, |6 g1 v+ Vgoto menu
% p2 A0 z5 ~4 c, D+ q+ ~( H& ?/ B:err- W/ n( b0 u* v. j: ], P7 S/ W
cls
6 z Z: |1 Q. g l5 S' y& i gmshta vbscript:msgbox("没有搜索到你要的文件,单击确定退出",64,"提示")(window.close)1 ~9 A9 J3 ?/ K7 q) w
exit
; K: ~9 f% S- w: w5 ^:erx
, w5 r: q# G* S# \; rcls
( e7 j5 J& ]9 ~/ C4 y! Kdel/q lise.txt >nul
% D9 L" J' E1 Dmshta vbscript:msgbox("没有搜索到你要的文件,单击确定退出",64,"提示")(window.close)
6 c# @- p. N) X; @. g$ oexit 1 F& x. }) {7 T* \3 ^
差点忘了,用记事本粘贴后,自己起名,后缀名写为bat或cmd
0 Q* L0 N/ a8 y0 a; C
% i4 V6 \! N2 O- t# a |
评分
-
查看全部评分
|