|
本帖最后由 youhun200 于 2023-12-28 11:53 編輯
& Q0 ^4 ?; e, [+ H3 |+ M: v
' A1 x# S' O, P4 n& J這個小程序是根據自己工作需要編寫的,很簡單,就是在跳出的list.txt里列出你要復制的文件名(可以不寫后綴名),由上至下寫入,然后按提示創建文件夾或已有文件夾,檢索后會彈出一個搜索到的文件清單,以供編輯。保存后回車,文件就全復制你指定的文件夾里了。下面我把代碼復制過來,僅供參考。(360會有提示,若不放心可以分析代碼,絕不會有損害系統的執行代碼)就當是一種娛樂吧 - v( I" P+ U* p( g0 E+ q
@echo off5 u/ S0 ~$ C. G! M: q, z( j: E" C- m: _
title 文件批量檢索復制
8 w' ?7 l6 q9 {color 1e, G0 f; y V E f
:stad% J8 v# \* d k5 J v
if not exist list.txt goto exd
8 S* I2 _+ C' a% A, `. N9 x5 Ncls! q0 }' x% X5 K8 e t) a) U
@echo.) P! N' e/ \' @
set/p ph= ● 輸入創建文件夾的名稱或已有文件夾名(空輸入無效):
! y& c4 a, N3 x7 F& {if "%ph%"=="" goto stad
1 i4 _' N' N& i4 J) P; n( y4 zif exist "%ph%" goto menu
, ^6 d/ b6 ~6 T% pmd "%ph%" & `5 p' I- N5 ]
:menu
) J" X$ Q- t6 o i5 N$ kcls
7 z% T, [- [. R. i3 D1 \( R# F, |. o ~mshta vbscript:msgbox("在文本中輸入需要搜索的文件列表, 保存并回車,單擊確定",64,"提示")(window.close)
" H( k- |5 l; o `5 w8 Olist.txt ) @% e( U$ s5 ]2 e k
findstr /rc:"." /rc:" " list.txt|| goto ens
+ \5 Z2 K4 N- w: K# M" y: b1 I' zcls# R; s" H; I& P( p$ e3 _" m7 g7 v
@echo.
% |4 ^" A- W- B; M0 W. ^. g& |, |@echo 回車繼續......& D5 C( |; p$ L$ g
pause >nul
8 ?: G* }3 D; p% Fcls4 L+ S5 O: t7 M8 n* c5 X7 r, B
@echo.0 U5 f3 ~0 K4 w! `* @
@echo 正在搜索文件,稍候......; b% }$ v+ K" ?5 ^3 V% Y: s
for /f "tokens=1*" %%f in (list.txt) do dir/s/a/b \*"%%f"* >>lise.txt 0 ^" {( `" D' f3 N9 F3 y. d
cls9 s# @9 o8 N0 w" U4 J/ Y
@echo.
/ N4 p* G2 _: {( R/ Ncls! V$ L: a+ [; `9 {# v T" D
findstr /rc:"." /rc:" " lise.txt|| goto err0 c6 ]$ {) f0 C* K- L! e& z3 M
cls8 e f0 f2 q- c3 ]
mshta vbscript:msgbox("查閱并編輯搜索到的文件列表, 保存并回車,單擊確定",64,"提示")(window.close)7 Y T) a$ N3 [" `
lise.txt
6 e; N! o% ` x@echo.0 B3 g% ^8 P0 ^, I g, A' H
@echo 回車繼續......
! M( W+ v) @1 Kpause >nul1 \9 j! z) a: d9 {+ B
cls
9 O5 ?8 s0 Z9 X& ~8 v; p% s5 z8 `findstr /rc:"." /rc:" " lise.txt|| goto erx! e4 _! {' ?1 T7 a9 X n9 \0 ]
cls: C) c5 R) N9 C7 T( _
for /f "tokens=1* delims=" %%f in (lise.txt) do copy/y "%%f" "%ph%" >nul 2>nul
. _/ Y) Q" K$ i; h) Zcls
" a( y$ v. L& [$ {@echo.
5 D7 \0 W1 ]; b7 tset cnt=0- s: y" n- ]: ~: Q O+ P
for /f "delims=" %%i in ('dir/b/a-d "%ph%" 2^>nul') do (set /a cnt+=1
+ e4 |* @+ G' d' J/ Q; g6 r1 x+ Q0 E)
( |* i3 y( u" N0 d' _if defined cnt (set inf=共搜索到【%cnt%】個文件.) else echo,NO find files.
1 [' \$ T* o& r# ?$ @3 i6 ydel/q lise.txt >nul: m6 D: Z( @+ Q7 d, [
mshta vbscript:msgbox("%inf%"^&vbCr^&vbCr^&"復制完成! 單擊確定退出",64,"提示")(window.close)
2 ?' l' j$ i% y/ Uexplorer.exe %ph%0 d! [ V* E* u5 A2 P. c
exit1 k. Y, G7 w8 O( I: ^- n
:exd
% `+ q- Q! L$ [9 Ccls+ O# ]' v9 |0 C9 ?. ~0 c0 V% u
@echo. >list.txt
$ K. _' m5 r- H9 w( N. fcls: P6 O+ v5 M6 r6 G
mshta vbscript:msgbox("【list.txt】文本已創建,單擊確定,繼續操作.",64,"提示")(window.close)1 m c5 u* Z* _' G4 a4 p! m, {
cls, c: k( S8 a* d v9 o/ K
goto stad+ L' U- w- I+ C" Y! u4 A2 k
:ens& n' D4 \1 V& V6 ^, N
cls8 w* v# n5 ]1 y' w6 }
mshta vbscript:msgbox("文本不能為空,單擊確定,繼續操作. ",16,"錯誤提示")(window.close)
- K1 R% i3 c2 I0 ^9 B, Eif not exist list.txt goto exd
* }# p2 p. H. r% c$ jgoto menu
- M# y7 q* A4 w4 f:err
/ |: w9 H! w7 l7 N, [ N$ E& `: z( \cls {$ _" N+ `3 [* g9 d
mshta vbscript:msgbox("沒有搜索到你要的文件,單擊確定退出",64,"提示")(window.close)$ D* f- d1 r% _0 `
exit6 L8 ~" `6 d# a* j5 U, W! \
:erx
6 o& u! K3 G& n% O; |0 _cls
% q% [# x% V; q! F. Pdel/q lise.txt >nul / |0 {1 Y; _4 K* a
mshta vbscript:msgbox("沒有搜索到你要的文件,單擊確定退出",64,"提示")(window.close)' c* o; G1 O0 i) }9 ^
exit
2 ~$ C$ n4 t. \; i: |* E& y差點忘了,用記事本粘貼后,自己起名,后綴名寫為bat或cmd
- m6 |' S( H/ S- [, c% H+ O0 j& C m. s* V& ~; d+ a
|
評分
-
查看全部評分
|