#!/usr/bin/perl use strict; use warnings; use IO::All; my ($version) = (map { m{\$VERSION *= *'([^']+)'} ? ($1) : () } io->file('lib/XML/Grammar/Fortune.pm')->getlines() ) ; if (!defined ($version)) { die "Version is undefined!"; } my @cmd = ( "hg", "tag", "-m", "Tagging the XML-Grammar-Fortune release as $version", "releases/cpan/$version", ); print join(" ", map { /\s/ ? qq{"$_"} : $_ } @cmd), "\n"; exec(@cmd);