All pastes #12659 Raw Edit

Someone

public text v1 · immutable
#12659 ·published 2005-05-26 04:22 UTC
rendered paste body
#!/usr/bin/perl
use warnings;

$help = 0;
if ($#ARGV == 2) {
    $url=$ARGV[1];
    $length=$ARGV[0];
    $url=$ARGV[2];
} else {
    $help = 1;
}

if ( $help == 1 ) {
    print "Usage:\n";
    print "    $0 length url basename\n";
    print "    length is an integer representing the number of\n";
    print "        seconds to record.\n";
    print "    url is, put simply, the url to download\n";
    print "    basename is the base name for the file downloads\n";
    print "        for example, a basename of \"foo\" would result\n";
    print "        in files named as such:\n";
    print "            foo-year-mo-da-hr-mi-se.mp3\n";
    print "        it is often useful to have a path as your\n";
    print "        basename, this is allowed.\n\n";
    exit 1;
}

$_=`date +-20%y-%m-%d-%H-%M-%S`;
chomp;
$filename = $basename.$_.".mp3";

$f=fork();

if($f==0){
    #child
    print "Writing ".$filename."...\n";
    exec("curl","-s","-o",$basename.$_.".mp3",$url);
    exit;
}

#parent
sleep $length;

kill 1,$f;

$_=`wc -c $filename`;
chomp;
($bytes,$file)=$_=~/\s+(\S+)\s+(\S+)/;
$kilobytes = $bytes/1024;
$file=$file; # get rid of that warning that says "Name "main::file" used only once: possible typo at /Users/ckastorff/bin/timenhbradiodl line 61."

print "Done - File Size is ".$bytes."B (".$kilobytes." KiB)\n";