fig11_02.pl

来自「PERL语言资料 可以用于PERL程序设计」· PL 代码 · 共 67 行

PL
67
字号
#!/usr/bin/perl
# Fig. 11.2: fig11_02.pl
# A program that uses file tests

use strict;
use warnings;

foreach my $file ( @ARGV ) {
   print( "Checking $file: " );

   if ( -e $file ) {        # does file exist?
      print( "$file exists!\n" );

      if ( -f $file ) {     # is the file a plain file?
         print( "The file $file is:" );
         print( " executable" ) if ( -x $file );  # executable?
         print( " readable" ) if ( -r $file );    # readable?
         print( " writable" ) if ( -w $file );    # writable?
         print( "\n" );
         print( "It is ", -s $file, " bytes.\n" ); # size
         my @time = timeconv( -A $file );          # accessed
         print( "Last accessed at $time[0] days, ",
                "$time[1] hours, $time[2] minutes ",
                "and $time[3] seconds.\n" );
         @time = timeconv( -M $file );             # modified
         print( "Last modified at $time[0] days, ",
                "$time[1] hours, $time[2] minutes, ",
                "and $time[3] seconds ago.\n" );
      }
      elsif ( -d $file ) {   # is it a directory?
         print( "$file is a directory!\n" );
      }
   }
   else {
      print( "$file doesn't exist.\n" );
   }

   print( "\n" );
}

sub timeconv
{
   my $time = shift();
   my $days = int( $time );
   $time = ( $time - $days ) * 24;
   my $hours = int( $time );
   $time = ( $time - $hours ) * 60;
   my $minutes = int( $time );
   $time = ( $time - $minutes ) * 60;
   my $seconds = int( $time );
   return ( $days, $hours, $minutes, $seconds );
}

###########################################################################
#  (C) Copyright 2001 by Deitel & Associates, Inc. and Prentice Hall.     #
#  All Rights Reserved.                                                   #
#                                                                         #
#  DISCLAIMER: The authors and publisher of this book have used their     #
#  best efforts in preparing the book. These efforts include the          #
#  development, research, and testing of the theories and programs        #
#  to determine their effectiveness. The authors and publisher make       #
#  no warranty of any kind, expressed or implied, with regard to these    #
#  programs or to the documentation contained in these books. The authors #
#  and publisher shall not be liable in any event for incidental or       #
#  consequential damages in connection with, or arising out of, the       #
#  furnishing, performance, or use of these programs.                     #
###########################################################################

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?