#!/usr/bin/perl { my $extensions = undef; sub get_standard_extension_cmdline { my $ext = shift; unless(defined $extensions) { my %assoc = map { split /=/, $_, 2 } split /\r?\n/, qx/assoc/; my %ftype = map { split /=/, $_, 2 } split /\r?\n/, qx/ftype/; $extensions = {}; while(my ($k, $v) = each %assoc) { $extensions->{lc $k} = $ftype{$v}; } } return $extensions->{lc $ext}; } } print ".pl = " . &get_standard_extension_cmdline('.pl') . "\n"; print ".zip = " . &get_standard_extension_cmdline('.zip') . "\n";