好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Windows批量搜索并復制/剪切文件的批處理程序實例

Windows批量搜索并復制/剪切文件的批處理程序實例

熱門標簽:地圖標注店鋪的收費 蘇丹地圖標注app 高德百度地圖標注推廣 為什么申請400電話 貴陽電話外呼系統廠家 南陽高頻外呼系統怎么安裝 京東辦理400電話查詢 外呼系統解決電銷問題 菏澤電銷外呼系統軟件

搜索包含關鍵字的文件名是最常用的功能之一,比如按人名搜索mp3、按內容搜索圖紙等等,當需要搜索成百上千個關鍵詞時,會消耗大量的人力和時間,這時就需要批量搜索功能。本文介紹一個我自己編寫的、用于批量搜索文件的批處理程序。

搜索包含關鍵字的文件名是最常用的功能之一,比如按人名搜索mp3、按內容搜索圖紙等等,當需要搜索成百上千個關鍵詞時,會消耗大量的人力和時間,這時就需要批量搜索功能。

傳統方法

Windows XP自帶了批量搜索的功能,在按(Win+F)彈出的搜索框中,填入若干關鍵詞,用逗號隔開,這樣搜出的結果是包含至少一個關鍵詞的文件。但是這種搜索方法有關鍵字數量的限制,而且要把一堆關鍵詞用逗號隔開也是需要點工夫的,當然你可以用Excel處理,但總歸比較麻煩。下面介紹一個我自己編寫的批處理程序。

任務描述

所謂批量搜索是在一批文件名里尋找多個關鍵詞,比如

關鍵詞列表:AA,BB,CC

目標文件名:AA1,BB2,DD3,BBC1,EE2,Abb

批量搜索得到的結果有:AA1,BB2,BBC1,Abb

因為Windows系統對文件名的大小寫只記錄,不區分,所以Abb也能被搜出來。

解決方法

利用批處理程序中強大的for命令,可以很好的完成批量的搜索。結合其他批處理命令,還能將搜出來的文件復制或者剪切到目的路徑下面。

首先把關鍵字保存在名叫“list.txt”的文本文件里,每個關鍵字占一行。注意不能有空格、空行、空回車。例如:

AA

BB

CC

然后把下面的代碼保存成以 *.bat 為擴展名的批處理文件。代碼如下:

::Batch search  copy/move, Mar 21,2009
::..

@echo off
color 3E
echo 本程序復制/剪切當前目錄下含有特定關鍵字的特定類型文件
echo 注意:覆蓋不提示,請小心操作
echo 注意:關鍵字列表不要有空格、空行、空回車
echo.
if not exist list.txt (echo.
echo 請先將關鍵字列表保存為list.txt...
pause > NUL
exit
)
echo.
echo 選擇要進行的操作:
set /p opt=復制(c) or 剪切(x):
if %opt% NEQ c if %opt% NEQ x (
echo 沒有選項,byebye!
pause >NUL
exit
)
set /p ext=指定文件擴展名(不含".",比如pdf,不指定請輸入*):
set /p url=目標文件夾路徑(不可在當前目錄內):
if not exist %url% md %url%
if %opt%==c set task=復制
if %opt%==x set task=剪切
echo 按任意鍵開始%task%....
pause > NUL

set count=0
for /f "tokens=*" %%i in (list.txt) do (
 for /r %%j in (*%%i*.%ext%) do (
echo 正在%task% %%j 到 %url%
if %opt%==c (copy "%%j" %url% >NUL)
if %opt%==x (move "%%j" %url% >NUL)
set /a count+=1
 )
)
echo.
echo 任務完成!共%task%了%count%個文件
echo.
echo by www.lfhacks.com
echo ..
pause >NUL
exit

把批處理文件和list.txt都放在要搜索的文件目錄下,運行批處理文件,按提示操作即可,注意大小寫敏感。由于for命令先天的限制,有兩點需要注意:

  1. 被搜索文件不能放在根目錄下,需要放在子目錄內
  2. 復制或者剪切的目的地最好在另外一個驅動器內,不然可能會造成死循環。

對上述代碼稍作修改,可以得到其他定制的功能,比如,下面的代碼就是建立以關鍵字命名的獨立目錄,作為復制/剪切的目的地。這個代碼可以用來將文件按某個字段分配到多個文件夾里:

::Batch search  copy/move, Mar 21,2009
::..

@echo off
color 3E
echo 本程序復制/剪切當前目錄下含有特定關鍵字的特定類型文件
echo 注意:覆蓋不提示,請小心操作
echo 注意:關鍵字列表不要有空格、空行、空回車
echo.
if not exist list.txt (echo.
echo 請先將關鍵字列表保存為list.txt...
pause > NUL
exit
)
echo.
echo 選擇要進行的操作:
set /p opt=復制(c) or 剪切(x):
if %opt% NEQ c if %opt% NEQ x (
echo 沒有選項,byebye!
pause >NUL
exit
)
set /p ext=指定文件擴展名(不含".",比如pdf,不指定請輸入*):
set /p url=目標文件夾路徑(不可在當前目錄內,末尾不要帶斜杠\):
if not exist %url% md %url%
if %opt%==c set task=復制
if %opt%==x set task=剪切
echo 按任意鍵開始%task%....
pause > NUL

set count=0
for /f "tokens=*" %%i in (list.txt) do (
 md %url%\%%i
 for /r %%j in (*%%i*.%ext%) do (
echo 正在%task% %%j 到 %url%\%%i
if %opt%==c (copy /Y "%%j" "%url%\%%i" >NUL)
if %opt%==x (move /Y "%%j" "%url%\%%i" >NUL)
set /a count+=1
 )
)
echo.
echo 任務完成!共%task%了%count%個文件
echo.
echo by www.lfhacks.com
echo ..
pause >NUL
exit

在批量搜索并轉移文件后,往往需要和原有的關鍵字比對,知道搜索到了多少文件。這就需要一個工具,能夠批量檢測一批關鍵字是否存在于一堆文件里。請參考另一篇文章: 批量檢測文件(夾)是否存在的批處理程序

您可能感興趣的文章:
  • windows批量檢測文件(夾)是否存在的批處理程序
  • windows搜索空文件夾的批處理程序代碼實例
  • Windows下使用批處理文件.bat刪除舊文件
  • Windows 2008 r2任務計劃程序執行批處理失敗問題解決方法
  • Windows命令行bat批處理延遲sleep方法(批處理延時)
  • Windows下bat批處理腳本使用telnet批量檢測遠程端口小記
  • PHP啟動windows應用程序、執行bat批處理、執行cmd命令的方法(exec、system函數詳解)
  • Windows運行bat批處理文件時隱藏cmd命令提示符窗口的方法
  • windows批處理命令教程
  • Windows下用命令行修改IP地址的方法詳解(附批處理文件)

標簽:海北 資陽 韶關 昌都 咸寧 通遼 滄州 阿里

巨人網絡通訊聲明:本文標題《Windows批量搜索并復制/剪切文件的批處理程序實例》,本文關鍵詞  Windows,批量,搜索,并,復制,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Windows批量搜索并復制/剪切文件的批處理程序實例》相關的同類信息!
  • 本頁收集關于Windows批量搜索并復制/剪切文件的批處理程序實例的相關信息資訊供網民參考!
  • 推薦文章