Если у вас есть Perl, такой скрипт должен работать:
#!/path/to/my/perl
use POSIX;
for (@ARGV ? @ARGV : <STDIN>) {
my ($Y,$m,$d) = m/(\d\d\d\d)(\d\d)(\d\d)/;
my $t = strftime "%d-%b-%Y", 0,0,0,$d,$m,$Y-1900;
print "\U$t\n";
}
Я не знаю, какие функции предоставляет AIX sh
, но это может работать:
#!/usr/bin/sh
case "$1" in
[1-2][0-9][0-9][0-9][0-1][0-9][0-3][0-9])
Y=${date%????}
MD=${date#????}
D=${MD#??}
M=${MD%??}
case "$M" in
01) M=JAN ;;
02) M=FEB ;;
03) M=MAR ;;
04) M=APR ;;
05) M=MAY ;;
06) M=JUN ;;
07) M=JUL ;;
08) M=AUG ;;
09) M=SEP ;;
10) M=OCT ;;
11) M=NOV ;;
12) M=DEC ;;
esac
echo "${D}-${M}-${Y}"
;;
*)
echo 1>&2 "invalid date"
exit 1 ;;
esac