जवाबों:
आपको Ubuntu पर ImageMagick स्थापित होने की संभावना है ।
वह कर सकता है ,
convert filename.bmp filename.jpg
अद्यतन करें:
mogrify(द्वारा उत्तर दिया hyperslugऔर द्वारा संदर्भित cjm) भी एक अच्छा विकल्प है।
छवि, ब्लर, क्रॉप, डेसपेकल , डेज़री , आकार, फ़्लिप, ज्वाइन, री-सैंपल और बहुत कुछ का आकार बदलने के लिए मोगरीफाई प्रोग्राम का उपयोग करें ।
यह उपकरण बदलने के लिए उपयुक्त है सिवाय इसके कि मूल छवि फ़ाइल अधिलेखित है
(जब तक कि आप-formatविकल्प के साथ फ़ाइल प्रत्यय को नहीं बदलते) आपके द्वारा अनुरोध किए गए परिवर्तनों के साथ।
मुझे उत्तर देने के लिए थोड़ा सा बदलाव करने दें:
for i in `ls *.bmp`; do convert $i $i.jpg; done
ऊपर काम करता है लेकिन "bmp.jpg" नाम की फाइलें उत्पन्न करता है। आप इस आदेश के साथ .jpg फाइलें प्राप्त कर सकते हैं:
for i in *.bmp; do convert ${i} ${i%bmp}jpg; done
कमांड के man bashविवरण के लिए देखें for। ${i%bmp}भाग स्ट्रिंग का अर्थ है "$ {मैं}" "bmp" अंत में सबस्ट्रिंग के बिना।
"$ {I}" में स्ट्रिंग को बदलने के लिए अन्य ऑपरेशन हैं। "$ i" "$ {i}" का शॉर्टहैंड है। ls *.bmpSalmonmoose जवाब साधन में भाग "पर अमल ls *.bmpकरें, तो के लिए iहिस्सा प्रदान करती है प्रत्येक स्ट्रिंग के लिए रिक्तियों से अलग i"। *.bmpइसे हासिल किया जाता है क्योंकि यह निर्देशिका में सभी फ़ाइल नामों से मेल खाता है।
इसके साथ एक खामी है for- यदि आपकी निर्देशिका में फ़ाइलों के नाम में रिक्त स्थान हैं, उदाहरण के लिए "शादी की तस्वीर 1.bmp", तो यह iइन कमांड का प्रदर्शन करते हुए, 3 बार var को सौंपा जाएगा :
convert wedding wedding.jpg
convert picture picture.jpg
convert 1.bmp 1.bmp.jpg
मेरे जवाब में भी मैच "$ {i% bmp}" विफल है।
लेकिन एक समाधान है - आप findइसके बजाय कमांड का उपयोग कर सकते हैं । man findविवरण के लिए देखें। आपको निम्नलिखित जैसा कुछ लिखना चाहिए (कृपया इसे आज़माने से पहले मैन पेज के साथ सिंटैक्स की जाँच करें):
find -name *.bmp -type f -exec convert '{}' '{}'.jpg \;
(मैं नाम भाग के बारे में बहुत निश्चित नहीं हूं, और मुझे इस -execभाग में कुछ संदेह है , man findपहले देखें )
यदि आप सभी छवियों को एक .jpg फ़ाइल में शामिल करना चाहते हैं, तो आप उन्हें दूसरे फ़िल्टर के साथ संक्षिप्त कर सकते हैं, जैसा कि पहले उत्तर में बताया गया है।
for i in `ls *.bmp`; do convert $i $i.jpg; done
हाँ, यह फ़ाइल नाम का एक गुच्छा बना देगा जिसे filename.bmp.jpg कहा जाता है लेकिन यह काम करेगा।
ls।