Blame


1 ffd9a51f 2023-08-04 jrmu #!/usr/bin/perl
2 ffd9a51f 2023-08-04 jrmu
3 ffd9a51f 2023-08-04 jrmu # Make a program to identify the oldest file named on the command line and report its age in days. What does it do if the list is empty? (That is, if no files are mentioned on the command line.)
4 ffd9a51f 2023-08-04 jrmu
5 ffd9a51f 2023-08-04 jrmu use v5.24;
6 ffd9a51f 2023-08-04 jrmu use warnings;
7 ffd9a51f 2023-08-04 jrmu use strict;
8 ffd9a51f 2023-08-04 jrmu use utf8;
9 ffd9a51f 2023-08-04 jrmu
10 ffd9a51f 2023-08-04 jrmu sub filetest {
11 ffd9a51f 2023-08-04 jrmu shift;
12 ffd9a51f 2023-08-04 jrmu printf ("%20s: ", $_);
13 ffd9a51f 2023-08-04 jrmu my $attribs;
14 ffd9a51f 2023-08-04 jrmu if (! -e) {
15 ffd9a51f 2023-08-04 jrmu return "(non-existent)\n";
16 ffd9a51f 2023-08-04 jrmu }
17 ffd9a51f 2023-08-04 jrmu if (-r) {
18 ffd9a51f 2023-08-04 jrmu $attribs .= "r";
19 ffd9a51f 2023-08-04 jrmu } else {
20 ffd9a51f 2023-08-04 jrmu $attribs .= "-";
21 ffd9a51f 2023-08-04 jrmu }
22 ffd9a51f 2023-08-04 jrmu if (-w) {
23 ffd9a51f 2023-08-04 jrmu $attribs .= "w";
24 ffd9a51f 2023-08-04 jrmu } else {
25 ffd9a51f 2023-08-04 jrmu $attribs .= "-";
26 ffd9a51f 2023-08-04 jrmu }
27 ffd9a51f 2023-08-04 jrmu if (-x) {
28 ffd9a51f 2023-08-04 jrmu $attribs .= "x";
29 ffd9a51f 2023-08-04 jrmu } else {
30 ffd9a51f 2023-08-04 jrmu $attribs .= "-";
31 ffd9a51f 2023-08-04 jrmu }
32 ffd9a51f 2023-08-04 jrmu return $attribs;
33 ffd9a51f 2023-08-04 jrmu }
34 ffd9a51f 2023-08-04 jrmu
35 ffd9a51f 2023-08-04 jrmu foreach (@ARGV) {
36 ffd9a51f 2023-08-04 jrmu print(filetest($_)."\n");
37 ffd9a51f 2023-08-04 jrmu }