#!/usr/bin/env perl use 5.014; use warnings; my $failcount = 0; for my $src (@ARGV) { my ($name, @cmds) = split /:/, $src =~ s/\.\w+$//r; next if $name =~ m/\./; say $name; unshift @cmds, -gravity => 'northwest'; push @cmds, -resize => '300x200^', -gravity => 'north', -extent => '300x200'; push @cmds, '-strip', -quality => '60%'; system(convert => @cmds, $src => "../$name.jpg") == 0 or $failcount += warn "error creating $name.jpg from $src\n"; } exit $failcount;