
Hello, my name is Mateusz and I am one of the IT guys behind Creative Weblogging. I will start a new mini-series here on this blog writing once in a while about interesting "hacks" or "tips&tricks" I have to use, discover or come up with every day at work. I hope it will be interesting and valuable to see how to make your life much easier when instead of hours of manual labor you can just type couple of lines in Shell and it will do the work for you.
Let's kick off this series with an introduction to a for loop. It's a simple and well-known concept, yet many people don't even realize it's available right there in front of you in every bash.
For loop in bash has many flavors, but that's a topic for another article, let's focus today on one of the simplest ones:
do
echo $name;
done
As you can imagine, this will list all the jpg files in my current dir. No better than ls. But wait, how about doing something with each and every of those files?
do
echo $name;
convert -resize 100x $name $name;
done
(For the above to work you need to have imagemagick installed)
With those couple of lines we have just resized all the pictures in current dir to thumbnail size. Be careful, we write back to the same file (as the second parameter to convert shows), so there is no way back.
As you can imagine from this simple example there is huge potential there. We will explore more of the for loop in further articles.
Good Job Mat :-)