উত্তর:
আপনি ইমেজম্যাগিকের মোগ্রিফি সরঞ্জামটি ব্যবহার করতে পারেন
mogrify - format jpg * .bmp
sudo apt install imagemagick
উবুন্টুতে রয়েছে এবং আপনি গুণমান নির্ধারণ করতে পারেন-quality 100
আপনি সম্ভবত উবুন্টুতে ইমেজম্যাগিক ইনস্টল করেছেন।
এটা করতে পারে ,
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 *.bmp
Salmonmoose উত্তর উপায়ে অংশগ্রহণ "চালানো ls *.bmp
, তারপর জন্য i
অংশ নির্ধারণ প্রতিটি স্ট্রিং শূণ্যস্থান দ্বারা পৃথক i
"। এটি একই দ্বারা অর্জন করা হয় *.bmp
কারণ এটি ডিরেক্টরিতে সমস্ত ফাইলের নামের সাথে মেলে।
এর সাথে একটি অপূর্ণতা রয়েছে for
- আপনার ডিরেক্টরিতে যদি ফাইলগুলির নামের ফাঁকা থাকে, উদাহরণস্বরূপ "বিবাহের চিত্র 1.bmp", i
এই আদেশগুলি সম্পাদন করে এটি ভারে 3 বার বরাদ্দ করা হবে :
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
।