Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg

PowerShell是微軟管理作業系統的程式語言,功能類似早期的MS-DOS但更加強大。本文介紹Windows 11如何開始使用內置好的PowerShell,簡單設計程式,批次自動化更改檔案副檔名。

一、資料夾圖片檔案

在E槽的「圖片」資料夾中有好幾個圖片檔案,副檔案都是大寫的「.JPG」,由於一般常見的是小寫的「.jpg」,為了統一起見,希望比較有效率將它批次從大寫改為小寫。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 1

二、Windows Terminal

Windows 11系統按下視窗鍵,進入「所有應用程式」,在其中找到W開頭的「Windows Terminal」。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 3

三、Windows power shell

上個步驟執行之後就會進入「Windows PowerShell」的執行視窗,類似於MS-DOS的介面,首先是電腦使用者的檔案總管目錄:「C:\Users\b8810>」,在此想要進入第一個步驟提到的資料夾,直接輸入DOS指令:「cd: e:\圖片」﹐按Enter鍵。

完整命令行即為:「PS C:\Users\b8810> cd e:\圖片」,最前面的「PS」便是PowerShell的意思。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 5

四、 Get-ChildItem命令

成功進入圖片檔案所在的資料夾目錄之後,輸入PowerShell」的命令「Get-ChildItem *.jpg」,其中的「Get-ChildItem」昰想取得目前目錄資料夾裡面的檔案項目,萬用字元星字號表示是任何長度任何文字的檔案名稱,可是副檔名必須是「.jpg」,注意到這裡是小寫。

完整命令行:「PS E:\圖片> Get-ChildItem *.jpg」

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 7

五、資料夾檔案清單

執行上個步驟命令,可以看到它和MS-DOS命令的dir是非常類似的結果,會顯示所有副檔名的檔案清單,不過注意到實際在執行時並沒有區分大小寫,即使所輸入的是小寫的「jpg」,仍然會把大寫的「JPG」檔案列出來。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 9

六、 Rename-Item命令

接著再輸入命令「Get-ChildItem *.JPG | Rename-Item -NewName { $_.Name -replace ‘.JPG’,’.jpg’ }」,這裡首先用剛才學到「Get-ChildItem」先篩選出要執行命令的對象,然後用「Rename-Item」及參數設定將將大寫的「.JPG」取代為小寫的「.jpg」。

完整命令行:「PS E:\圖片> Get-ChildItem *.JPG | Rename-Item -NewName { $_.Name -replace ‘.JPG’,’.jpg’ }」

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 11

七、瞭解執行結果

執行上個步驟程式後並沒有出現錯誤訊息,為了瞭解是否成功,再用先前同樣方式輸入:

PS E:\圖片> Get-ChildItem *.jpg

果然,所有的圖片檔案副檔名都已經大小寫轉換了。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 13

八、圖片檔案副檔名

再回到Windows檔案總管視窗,在資料夾裡所有圖片檔案確實都都已經更改為小寫的「.jpg」了。

附帶一提,贊贊小屋文章:《機械鍵盤如何挑選:CHERRY開箱及茶青紅黑軸體推薦》便是利用這篇文章所介紹的方式輔助寫成的,有興趣可以參考看看。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 15

九、MS-DOS dir命令

回到PowerShell,剛才是用Get-ChildItem命令,在此其實也可以輸入MS-DOS常見基本的dir命令,同樣得到檔案名稱包含副檔案的清單,這裡剛好資料夾裡面都是圖片檔案,如果同時也有其他類型檔案,可以使用萬用字元,和Get-ChildItem *.jpg相同功能。

Windows11 PowerShell入門:自動化將圖片檔案副檔名從JPG改為jpg 17

從MS-DOS到PowerShell

從本篇文章最後第九步驟使用MS-DOS的dir和PowerShell的Get-ChildItem得到樣結果大概可以得知,PowerShell是有繼承MS-DOS至少部份的命令,同樣可以使用,並且在既有基礎上進一步開發自己的命令。可以從這個角度理解到PowerShell是微軟新一代的DOS,功能都是為了更有效率與微軟作業系統互動對話,因此所開發的程式語言,能夠對於作業系統下達查詢或批次處理的指令。

當然PowerShell是比較先進並且持續在改版,比較能够處理目前電腦主機系統可能有的需求跟問題。也因此PowerShell是適合公司IT資訊部門的應用程式,主要用於公司整體資訊系統的部置。不過如同本篇文章所示,在有些場合也能應用在實務工作上,贊贊小屋日後有適當範例會有更多PowerShell的文章分享。

系列文章延伸閱讀:贊贊小屋Windows文章合輯