138494Sobrien#!@PERL@ 238494Sobrien# convert amd maps to Sun automount maps 338494Sobrien# usage: amd2sun file 438494Sobrien# 5174294Sobrien# Package: am-utils-6.x 638494Sobrien# Author: "Mark D. Baushke" <mdb@cisco.com> 738494Sobrien 838494Sobrienprint "# file created by amd2sun 938494Sobrien# 1038494Sobrien# DO NOT EDIT THIS FILE AT ALL 1138494Sobrien# It is automatically generated from the amd mount map - edit that instead 1238494Sobrien# 1338494Sobrien"; 1438494Sobrienwhile (<>) { 1538494Sobrien print, next if /^#/; 1638494Sobrien chop; 1738494Sobrien $line = $_; 1838494Sobrien while ($line =~ /\\$/) { 1938494Sobrien chop $line; 2038494Sobrien $line2 = <>; 2138494Sobrien $line2 =~ s/^\s*//; 2238494Sobrien $line .= $line2; 2338494Sobrien chop $line; 2438494Sobrien } 2538494Sobrien 2638494Sobrien next unless $line =~ /^([^\s]+)\s+(.*)$/; 2738494Sobrien 2838494Sobrien $fs = $1; $rest=$2; 2938494Sobrien 3038494Sobrien if ($fs =~ /^\/defaults/) { 3138494Sobrien ($defopts = $rest) =~ s/^.*[\s;]opts:=([^;\s]+)[;\s]*.*$/\1/; 3238494Sobrien next; 3338494Sobrien } 3438494Sobrien 3538494Sobrien $opts=$defopts; 3638494Sobrien 3738494Sobrien if ($rest =~ /opts:=([^;\s]+)[;\s]/) { 3838494Sobrien $opts = $1; 3938494Sobrien } 4038494Sobrien 4138494Sobrien $opts =~ s/,ping=[-\d]+//g; 4238494Sobrien 4338494Sobrien ($rhost = $rest) =~ s/^.*[\s;]rhost:=([^;\s]+)[;\s]*.*$/\1/; 4438494Sobrien ($rfs = $rest) =~ s/^.*[\s;]rfs:=([^;\s]+)[;\s]*.*$/\1/; 4538494Sobrien 4638494Sobrien if ($rest =~ /sublink:=([^;\s]+)[;\s]/ ) { 4738494Sobrien $rfs .= "/$1"; 4838494Sobrien } 4938494Sobrien 5038494Sobrien print "$fs -$opts $rhost:$rfs\n"; 5138494Sobrien} 52