您好,登錄后才能下訂單哦!
小編給大家分享一下shell如何實現批量壓縮指定目錄及子目錄內圖片,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
用戶上傳的圖片,一般都沒有經過壓縮,造成空間浪費。因此需要編寫一個程序,查找目錄及子目錄的圖片文件(jpg,gif,png),將大于某值的圖片進行壓縮處理。
代碼如下:
#!/bin/bash # 查找目錄及子目錄的圖片文件(jpg,gif,png),將大于某值的圖片進行壓縮處理 # Config folderPath='/home/fdipzone/photo' # 圖片目錄路徑 maxSize='1M' # 圖片尺寸允許值 maxWidth=1280 # 圖片最大寬度 maxHeight=1280 # 圖片最大高度 quality=85 # 圖片質量 # 壓縮處理 # Param $folderPath 圖片目錄 function compress(){ folderPath=$1 if [ -d "$folderPath" ]; then for file in $(find "$folderPath" \( -name "*.jpg" -or -name "*.gif" -or -name "*.png" \) -type f -size +"$maxSize" ); do echo $file # 調用imagemagick resize圖片 $(convert -resize "$maxWidth"x"$maxHeight" "$file" -quality "$quality" -colorspace sRGB "$file") done else echo "$folderPath not exists" fi } # 執行compress compress "$folderPath" exit 0
以上是“shell如何實現批量壓縮指定目錄及子目錄內圖片”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。