GNU/Linux >> Belajar Linux >  >> Linux

Konversi banyak file BMP ke JPEG di Linux

Anda dapat menggunakan alat mogrifikasi ImageMagick

mogrify -format jpg *.bmp

Anda mungkin menginstal ImageMagick di Ubuntu.
Itu bisa,

convert filename.bmp filename.jpg

perbarui:

mogrify (dijawab dengan hyperslug dan dirujuk oleh cjm ) juga merupakan opsi yang bagus.

Gunakan mogrify program untuk mengubah ukuran gambar, memburamkan, memotong, menghapus bintik, gentar, menggambar, membalik, bergabung, sampel ulang, dan banyak lagi.
Alat ini mirip dengan konversi kecuali bahwa file gambar asli ditimpa
(kecuali jika Anda mengubah akhiran file dengan -format opsi) dengan perubahan apa pun yang Anda minta.


Biarkan saya melakukan sedikit perubahan pada jawaban salmonmoose:

for i in `ls *.bmp`; do convert $i $i.jpg; done

Di atas berfungsi tetapi menghasilkan file bernama "bmp.jpg". Anda bisa mendapatkan file .jpg dengan perintah ini:

for i in *.bmp; do convert ${i} ${i%bmp}jpg; done

Lihat man bash untuk detail for memerintah. ${i%bmp} bagian berarti string "${i}" tanpa substring "bmp" di akhir.

Ada operasi lain untuk mengubah string di "${i}". "$i" adalah kependekan dari "${i}". ls *.bmp bagian dalam jawaban salmonmoose berarti "jalankan ls *.bmp , lalu untuk i part menetapkan setiap string yang dipisahkan oleh spasi ke i ". Hal yang sama dicapai dengan *.bmp karena cocok dengan semua nama file di direktori.

Ada kekurangan dengan for - jika file dalam direktori Anda memiliki spasi pada namanya, misalnya "gambar pernikahan 1.bmp", maka akan diberikan 3 kali ke i var, melakukan perintah berikut:

convert wedding wedding.jpg 
convert picture picture.jpg
convert 1.bmp  1.bmp.jpg

Dalam jawaban saya juga kecocokan "${i%bmp}" gagal.

Tapi ada solusinya - Anda bisa menggunakan find perintah sebagai gantinya. Lihat man find untuk rincian. Anda harus mengetikkan sesuatu seperti berikut (periksa sintaks dengan halaman manual sebelum mencobanya):

find -name *.bmp -type f -exec convert '{}' '{}'.jpg \;

(Saya tidak terlalu yakin dengan bagian nama, dan saya ragu dengan -exec bagian, lihat man find pertama)

Jika Anda ingin menggabungkan semua gambar dalam satu file .jpg, Anda dapat menggabungkannya dengan filter lain, seperti yang disebutkan di jawaban pertama.


Linux
  1. Linux menemukan perintah

  2. File log Linux

  3. Bagaimana cara mengubah PDF menjadi JPG dengan baris perintah di Linux?

  1. Konversi file audio dengan perintah Linux serbaguna ini

  2. Cara Mengonversi File ke Encoding UTF-8 di Linux

  3. Perintah Linux ls - Daftar File

  1. Perintah mcopy di Linux

  2. Linux mengganti nama file menjadi huruf besar

  3. Bagaimana cara mengonversi file pptx ke jpg atau png (untuk setiap slide) di linux?