#!/usr/bin/env perl use warnings; use strict; use CDDB_get qw( get_cddb ); sub show_usage; # Get the output file name if (@ARGV != 1) { show_usage; exit 1; } my $output_file_name = shift @ARGV; # Open the output file for writing open my $output_file, "> $output_file_name"; die "Error opening $output_file_name: $!" unless defined $output_file; # following variables just need to be declared if different from defaults my %config; $config{CDDB_HOST} = "freedb.freedb.org"; # set cddb host $config{CDDB_PORT} = 8880; # set cddb port $config{CDDB_MODE} = "cddb"; # set cddb mode: cddb or http $config{CD_DEVICE} = "/dev/cdrom"; # set cd device # User interaction welcome? $config{input} = 1; # 1: ask user if more than one possibility # 0: no user interaction # get it on my %cd = get_cddb(\%config); die "No cddb entry found" unless defined $cd{title}; # Write the results to the output file print $output_file "$cd{artist}\n"; print $output_file "$cd{title}\n"; print $output_file "\n"; foreach my $i ( @{$cd{track}} ) { print $output_file "$i\n"; } exit 0; sub show_usage { print STDERR "Usage: cddb_get output_file\n"; }