批次轉換分佈在數十個資料夾中的多個特定影像

批次轉換分佈在數十個資料夾中的多個特定影像

我有一個 JPG 檔案列表,每個檔案位於僅命令列伺服器上的不同資料夾中,我需要將其轉換為 PNG。

我知道使用 mogrify 將它們一一轉換的簡單命令。但我有大約 300 張不同名稱的圖像分佈在所有不同的資料夾中,如下所示:

/home/user/dfp/app/roundtable/wp-content/uploads/2022/06/play.jpg
/home/user/dfp/app/roundtable/wp-content/uploads/2021/02/turn.jpg
/home/user/dfp/app/roundtable/wp-content/uploads/2020/01/up.jpg
/home/user/dfp/app/roundtable/wp-content/uploads/2022/09/down.jpg
/home/user/dfp/app/roundtable/wp-content/uploads/2021/01/left.jpg
etc etc

每個目錄中還有數千張其他圖像,我根本不想更改它們。只是我列表中的特定文件。

是否有一個簡單的手錶可以批量/批量轉換我擁有的圖像列表?我確實在 .txt 檔案中擁有圖像列表,如上面的範例。

答案1

您可以使用簡單的 shell 循環來讀取和處理清單檔案中的檔案名稱。以bash外殼為例:

while IFS= read -r file; do
  # your mogrify command on "$file"
done < path/to/listfile.txt

#!/bin/bash您可以在互動式 bash 命令列中運行它,也可以將其作為頂部帶有 shebang 的腳本運行。

相關內容