4 viisi pakkide teisendamiseks oma PNG-d JPG-deks ja vastupidi


Arvutamisel on paketttöötlus rea interaktiivselt programmi ülesannete täitmine. Selles juhendis pakutakse teile nelja lihtsat viisi mitmete .PNG piltide pakkide teisendamiseks .JPG ja vastupidi, kasutades Linuxi käsurea tööriistu.

Kõigis näidetes kasutame käsurea konverteerimist, kuid selle saavutamiseks võite kasutada ka mogrify-d.

Konverteerimise süntaks on:

$ convert input-option input-file output-option output-file

Ja mogrify on:

$ mogrify options input-file

Märkus. Funktsiooniga mogrify asendatakse algne pildifail vaikimisi uue pildifailiga, kuid seda on võimalik vältida, kasutades teatud suvandeid, mille leiate man-lehelt.

Allpool on toodud erinevad viisid kõigi .PNG piltide pakkide teisendamiseks .JPG -vormingusse, kui soovite teisendada .JPG -i .PNG , saate käske vastavalt oma vajadustele muuta.

1. Teisendage PNG JPG-ks, kasutades käske ls ja xargs

Käsk ls võimaldab teil loetleda kõik oma png-pildid ja xarg-id võimaldavad tavalise sisendi abil teisendada käsu konverteerida kõigi .png piltide teisendamiseks .jpg .

----------- Convert PNG to JPG ----------- 
$ ls -1 *.png | xargs -n 1 bash -c 'convert "$0" "${0%.png}.jpg"'

----------- Convert JPG to PNG ----------- 
$ ls -1 *.jpg | xargs -n 1 bash -c 'convert "$0" "${0%.jpg}.png"'

Selgitus ülaltoodud käsus kasutatud suvandite kohta.

  1. -1 - lipp käsib ls-l loetleda üks pilt reale.
  2. -n - määrab maksimaalse arvu argumente, mis on 1 juhtumi puhul.
  3. -c - annab bashile käsu antud käsu käivitamiseks.
  4. & # 36 {0% .png} .jpg - määrab uue teisendatud pildi nime, märk% aitab eemaldada vana faililaiendi.

Kõigi failide loendisse muutmise kuupäeva ja kellaaja järgi kasutasin käsku ls -ltr .

Samamoodi saate ülaltoodud käsu abil teisendada kõik oma .jpg -pildid .png -iks, kohandades ülaltoodud käsku.

2. Teisendage PNG JPG-ks, kasutades käsku GNU ‘Parallel’

GNU Parallel võimaldab kasutajal paralleelselt standardsetest sisenditest shellikäske ehitada ja täita. Veenduge, et teie süsteemis oleks GNU Parallel installitud, vastasel juhul installige see vastavate alltoodud käskude abil:

$ sudo apt-get install parallel     [On Debian/Ubuntu systems]
$ sudo yum install parallel         [On RHEL/CentOS and Fedora]

Kui utiliit Parallel on installitud, saate kõigi käskude .png teisendamiseks standardsisendist .jpg vormindada järgmise käsu.

----------- Convert PNG to JPG ----------- 
$ parallel convert '{}' '{.}.jpg' ::: *.png

----------- Convert JPG to PNG -----------
$ parallel convert '{}' '{.}.png' ::: *.jpg

Kus

  1. {} - sisendrida, mis on asendusstring, mis on asendatud sisendallikast loetud täieliku reaga.
  2. {.} - sisendjoon miinus laiendus.
  3. ::: - määrab sisendallika, see on ülaltoodud näite käsurida, kus * png või * jpg on argument.

Teise võimalusena saate kõigi piltide pakkide teisendamiseks kasutada ka ls ja paralleelseid käske koos:

----------- Convert PNG to JPG ----------- 
$ ls -1 *.png | parallel convert '{}' '{.}.jpg'

----------- Convert JPG to PNG -----------
$ ls -1 *.jpg | parallel convert '{}' '{.}.png'

3. Teisendage PNG JPG-ks, kasutades käsku „silmuseks”

Shelliskripti kirjutamise sagimise vältimiseks võite käsurealt käivitada for loop :

----------- Convert PNG to JPG ----------- 
$ bash -c 'for image in *.png; do convert "$image" "${image%.png}.jpg"; echo “image $image converted to ${image%.png}.jpg ”; done'

----------- Convert JPG to PNG -----------
$ bash -c 'for image in *.jpg; do convert "$image" "${image%.jpg}.png"; echo “image $image converted to ${image%.jpg}.png ”; done'

Iga ülaltoodud käsus kasutatud valiku kirjeldus:

  1. -c võimaldab for loopi lauset täita üksik jutumärkides.
  2. Pildimuutuja on kataloogis olevate piltide arvu loendur.
  3. Iga teisendustoimingu puhul teatab kajakäsk kasutajale, et png-pilt on teisendatud JPG-vormingusse ja vastupidi real $image teisendatud & # 36 {image% .png} .jpg ".
  4. \"& # 36 {image% .png} .jpg" loob teisendatud pildi nime, kus% eemaldab vana pildivormingu laienduse.

4. Teisendage PNG JPG-ks, kasutades Shell Scripti

Kui te ei soovi oma käsurida määrduda, nagu eelmises näites, kirjutage selline väike skript:

Märkus. Üksteisest vormingusse teisendamiseks vahetage laiendusi .png ja .jpg vastavalt allpool toodud näidele sobivalt.

#!/bin/bash
#convert
for image in *.png; do
        convert  "$image"  "${image%.png}.jpg"
        echo “image $image converted to ${image%.png}.jpg ”
done
exit 0 

Salvestage see nimega convert.sh ja tehke skript käivitatavaks ning seejärel käivitage see kataloogis, kus on teie pildid.

$ chmod +x convert.sh
$ ./convert.sh

Kokkuvõtteks käsitlesime mõningaid olulisi viise .png piltide pakkide teisendamiseks .jpg -vormingusse ja vastupidi. Kui soovite pilte optimeerida, võite tutvuda meie juhendiga, mis näitab, kuidas png- ja jpg-pilte Linuxis tihendada.

Võite ka meiega jagada mis tahes muid meetodeid, sealhulgas Linuxi käsurea tööriistu piltide teisendamiseks terminalis ühest vormingust teise, või küsida küsimust allpool oleva kommentaaride jaotise kaudu.