<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
一個朋友跟我抱怨說,有沒有好的方法處理40多個壓縮包內的加密pdf檔案,並自動壓縮回壓縮包內?之前10幾個壓縮包的時候還覺得工作量還行,20幾個加密pdf檔案也就1個小時的事情,現在是40多個壓縮包,90個加密檔案,一個一個這樣幹太枯燥了。
批次處理就是可以對檔案進行批次處理,而不需要一個一個的去對檔案執行相同的操作。Window下的批次處理一般有幾種方式,第一種是直接在CMD的Dos介面執行批次處理命令,第二種就是儲存檔案為bat格式,然後雙擊執行檔案就可以自動執行檔案內的所有批次處理命令,類似於Python檔案。
工作中經常會出現私人有一個微信,公司又有一個微信,所以想在一臺電腦上同時登入私人和公司的微信,工作和生活兩不誤。同時登入多個微信有多個方法。
第一個方法是,將滑鼠指標移到微信圖示並選中,然後連續按Enter鍵幾次以上,就可以登入多個微信賬號,要求是賬號必須在手機登入,並進行掃碼。
第二個方法就是可以通過批次處理的方式進行登入。
批次處理的操作步驟如下:
(1)新建一個bat檔案。
新建一個txt檔案,然後將字尾名txt改成bat就可以。
(2)編輯bat檔案,記事本開啟檔案然後將以下程式碼複製進去
::關閉回顯(命令不列印輸出),@命令從本行開始 @echo off ::執行第一個微信 start /d "D:ProgramFilesTencentWeChat" WeChat.exe ::執行第二個微信 start /d "D:ProgramFilesTencentWeChat" WeChat.exe exit
紅色部分需要替換成你自己的微信安裝目錄。
start命令,/d表示啟動目錄。整個命令的格式如下圖。
因為我用的pdf解密軟體(PDFPasswordRemover)雖然支援批次處理,但官方檔案沒有給出如何在Windwos系統下批次處理呼叫方式,它的批次處理方式是將所有pdf檔案拖入軟體框內就可以批次處理進行解密操作,所以我寫的批次處理操作需要將所有壓縮包內的pdf檔案解壓後拷貝到同一個資料夾內,有知道的小夥伴可以在評論區告訴我。
(1)解壓所有壓縮包
::關閉回顯(命令不列印輸出),@命令從本行開始 @echo off ::查詢當前資料夾內所有的.zip檔案並使用WinRAR進行解壓 for %%i in (*.zip) do (D:ProgramFilesWinRarWinRAR.exe x -y %%i) pause
注意:執行這個命令需要安裝WinRAR軟體,並且需要更改紅色的路徑。
目前這個命令可行的是WinRar軟體,360Zip是不行的,這樣寫會變成壓縮命令。
以下是for命令的格式和引數。
(2)將所有解壓出來的pdf檔案拷貝到一個資料夾內。
/r引數是表示遍歷當前目錄以及所有子目錄。
/y引數是表示目標檔案存在同名檔案時,預設覆蓋掉此檔案。
::關閉回顯(命令不列印輸出),@命令從本行開始 @echo off ::建立一個目標路徑變數tarDir set tarDir=C:Outputpdf ::路徑不存在則建立一個 if not exist %tarDir% (mkdir %tarDir%) ::查詢當前路徑以及子目錄下的所有以.pdf結尾的檔案,覆蓋拷貝到目標路徑 for /r %%i in (*.pdf) do (copy /y %%i %tarDir% > nul) pause
copy的命令格式和引數。
這兩個命令檔案可以合併成一個,執行完第一步之後,加入此步的for行命令。
(3)批次解密pdf檔案
將上一步的C:Outputpdf資料夾內所有pdf拖入下面的軟體中,
上面軟體的輸出預設在C:Output資料夾
(4)批次拷貝解密後的pdf檔案回壓縮包目錄
解密後的pdf檔案預設會新增_Password_Removed.pdf字尾
也就是我們拷貝回去的時候,只需要拷貝字尾是_Password_Removed.pdf的檔案,而原來的pdf檔名稱是去掉_Password_Removed,所以我們需要判斷之前壓縮包解壓出來的目錄,是否存在原檔案,如果存在則拷貝字尾是_Password_Removed.pdf的解密檔案,不存在則跳過。
::關閉回顯(命令不列印輸出),@命令從本行開始 @echo off ::設定延遲變數 setlocal EnableDelayedExpansion ::建立變數srcDir並賦值 set srcDir=C:Output ::建立變數tarDir並賦值bat檔案所處目錄 set tarDir=%cd% ::外層for迴圈遍歷檔名包含_Password_Removed的檔案 for /f "delims=" %%i in ('dir %srcDir% /b *_Password_Removed*') do ( ::對檔名進行處理,並去除_Password_Removed ::echo %%i set var=%%i set var=!var:_Password_Removed=! ::echo %%i !var! ::遍歷壓縮包目錄的子目錄,並判斷子目錄是否包含原檔案 for /f %%j in ('dir %tarDir% /ad/b/s') do ( ::echo - set cur="%%j!var!" ::echo !cur! ::原檔案存在則拷貝外層解密檔案 if exist !cur! ( echo ---%%i %%j & copy /y %srcDir%%%i %%j > nul) ) ) pause
記得需要把bat檔案放置到原先的壓縮包目錄。
/f參數列示對目錄以及子目錄進行遍歷迴圈時,可以開啟檔案,並將檔案裡面的內容讀取到記憶體,你可以對這個檔案的內容再進行遍歷,目前這裡還不需要,只需要檔名就可以了。
dir表示指向目錄。/b捨棄標題與摘要內容,不加這個視窗會多出很多列印。
/b /a:d選項是指定顯示所有具有該屬性的檔案目錄。
/s 查詢當前目錄以及所有子目錄下的檔案。
set var=!var:_Password_Removed=!
這條語句就是將_Password_Removed賦值為空,如果想改成其它的,直接在修改=後面就可以了。
copy /y選項是存在預設處理方式是覆蓋掉檔案,不加這個會一直彈窗讓你選擇。
(5)批次壓縮目錄
::關閉回顯(命令不列印輸出),@命令從本行開始 @echo off ::查詢當前資料夾內所有的目錄,並將其壓縮成目錄名.zip檔案,壓縮完不刪除原檔案目錄 for /d %%i in (*) do (D:ProgramFilesWinRarWinRAR.exe a -k -r -s -m1 %%i.zip %%i) pause
WinRAR批次處理命令。
a :備份所有檔案。-k :鎖定壓縮檔案。-r:備份目錄和子目錄。-s :建立固實壓縮檔案。
-m<n>:設定壓縮模式,從底到高壓縮率越高:-m0不壓縮方式儲存;-m1最快;-m2較快;-m3標準(預設);-m4較好;-m5最好。
總結
以上就是對批次處理命令的理解了,批次處理對於重複性工作的幫助還是挺大的,能夠大大提高工作的效率。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45