# HCdarwin.def: Darwin Specific Code # $Id: HCdarwin.def,v 1.7 2008/02/25 17:32:54 mschenke Exp $ # ARCS: $Header: /home/cvs/repository/RDA_4/src/scripting/lib/modules/HCdarwin.def,v 1.7 2008/02/25 17:32:54 mschenke Exp $ # # Change History # 20080225 MSC Change the copyright notice. =head1 NAME HCdarwin - Sub Module Specific to the Mac OS/Darwin Operating System =cut # Make the module persistent keep $KEEP_BLOCK,@SHARE_MACROS var @SHARE_MACROS = ('get_df') =head1 DESCRIPTION This module determines the operating system version. The following macro is available. =cut import $OS_LVL,$OS_NAM,$OS_PLT,$OS_TYP,$OS_VER var $OS_NAM = uname('s') var $OS_VER = uname('r') var %osd = () if command('sw_vers') {loop $lin (last) {var ($key,$val) = split(':\s*',$lin,2) var $osd{$key} = $val } var $OS_PLT = $osd{'ProductName'} var $OS_TYP = $osd{'ProductVersion'} var $OS_LVL = $osd{'BuildVersion'} } else var $OS_PLT = getOsName() =head2 get_df($dir) This macro returns the number of free KiB on the file system containing the specified directory. =cut macro get_df {var ($dir) = @arg var ($lin) = grepCommand(concat('df -k ',quote($dir,'x')),'\s\d+\%') var (undef,undef,undef,$siz) = split('\s+',$lin,5) return $siz } =head1 COPYRIGHT NOTICE Copyright (c) 2002-2008, Oracle. All rights reserved. =head1 TRADEMARK NOTICE Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. =cut