LogIn E-mail
¼³°èÀ̾߱â
jtime.pm - localtime, timelocal
# 13 JMJS    09.4.9 10:32

#!/bin/perl
use Time::Local;
my $a=time;
print "$a\n";
my @b = localtime($a);
print join(".",@b)."\n";
my $c = timelocal(@b);
print "$c\n";


#!/usr/bin/perl

#==============================================================================#
package main;
#==============================================================================#

#------------------------------------------------------------------------------#
sub time_chrs {
#------------------------------------------------------------------------------#
        my ($atime) = @_;
        if(! $atime) { $atime = time;}
        my ($xs,$xm,$xh,$xdd,$xmm,$xyy,$xwd,$xyd,$xisdst) = localtime($atime);
        $xmm ++;
        $xyy += 1900;
        $atime = sprintf("%4d%02d%02d%02d%02d%02d",$xyy,$xmm,$xdd,$xh,$xm,$xs);
        my @olist = split(//,$atime);
        @olist;
}

#------------------------------------------------------------------------------#
sub time_str {
#------------------------------------------------------------------------------#
        my ($atime) = @_;
        if(! $atime) { $atime = time;}
        print "$atime\n";
        my ($xs,$xm,$xh,$xdd,$xmm,$xyy,$xwd,$xyd,$xisdst) = localtime($atime);
        $xmm ++;
        if($xyy > 99) { $xyy -= 100;}
        return sprintf("%02d.%d.%d %02d:%02d:%02d",$xyy,$xmm,$xdd,$xh,$xm,$xs);
}

#------------------------------------------------------------------------------#
sub time_num14 {
#------------------------------------------------------------------------------#
        my ($atime) = @_;
        if(! $atime) { $atime = time;}
        my ($xs,$xm,$xh,$xdd,$xmm,$xyy,$xwd,$xyd,$xisdst) = localtime($atime);
        $xmm ++;
        $xyy += 1900;
        return sprintf("%d%02d%02d%02d%02d%02d",$xyy,$xmm,$xdd,$xh,$xm,$xs);
}

#------------------------------------------------------------------------------#
sub str_time {
#------------------------------------------------------------------------------#
        my ($str) = @_;
        my ($xyy,$xmm,$xdd,$xh,$xm,$xs) = split(/[\.\:\s]/,$str);
        if($xyy < 10) { $xyy += 2000;}
        elsif($xyy < 1900) { $xyy += 1900;}
        my $tstr = sprintf("%d%02d%02d%02d%02d%02d",$xyy,$xmm,$xdd,$xh,$xm,$xs);
        my $pnum = time;
        my $pstr = &time_num14($pnum);
        my $diff = $pstr - $tstr;
        do {
                while($tstr < $pstr) {
                        $pnum -= $diff;
                        $pstr = &time_num14($pnum);
                };
                $diff = $diff>>1;
                while($tstr > $pstr) {
                        $pnum += $diff;
                        $pstr = &time_num14($pnum);
                }
                $diff = $diff>>1;
        } while($tstr != $pstr);

        return $pnum;
}

my $astr = "08.3.2 12:00:24";
print "$astr\n";
print &str_time($astr);





%cat jtime.pl
#!/usr/bin/perl
#time,localtime,gmtime
require "$ENV{'JUTIL_HOME'}/jtime.pm";

my $atime = 0;
print "1.time:$atime\n";
my @timearray = localtime($atime);
print "  localtime:",join(',',@timearray)."\n\n";

$atime = time;
print "2.time:$atime\n";
my @timearray = localtime($atime);
print "  localtime:",join(',',@timearray)."\n\n";

@timearray = (6,5,4,3,2,6);
print "3.timearray:",join(',',@timearray)."\n";
$atime = timelocal(@timearray);
print "  timelocal:$atime\n";
@timearray = localtime($atime);
print "  localtime:",join(',',@timearray)."\n\n";

@timearray = (6,5,4,3,2,2006);
print "4.timearray:",join(',',@timearray)."\n";
$atime = timelocal(@timearray);
print "  timelocal:$atime\n";
@timearray = localtime($atime);
print "  localtime:",join(',',@timearray)."\n\n";

print "5.jtime:$atime\n";
@timearray = jlocaltime($atime);
print "  jlocaltime:",join(',',@timearray)."\n";
$atime = jtimelocal(@timearray);
print "  jtimelocal:$atime\n";

@timearray = jtimeread("2006.9.8","10:11:30");
print "  jtimeread:",join(',',@timearray)."\n";
@timearray = btimeread("20060908101130");
print "  btimeread:",join(',',@timearray)."\n";



%cat jtime.pm
#!/usr/bin/perl
#time,localtime,gmtime
require "timelocal.pl"; #for timelocal, timegm

#--------------------------------------------------------------------#
sub jlocaltime {
#--------------------------------------------------------------------#
        my ($time) = @_;
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
                        localtime($time);
        $year+=1900;
        $mon ++;
        ($year,$mon,$mday,$hour,$min,$sec);
}

#---------------------------------------------------------------------#
sub jtimelocal {
#---------------------------------------------------------------------#
        my ($jyear,$jmonth,$jday,$jhour,$jmin,$jsec) = @_;
        $jmonth --;
        my $jtime = timelocal($jsec,$jmin,$jhour,$jday,$jmonth,$jyear);
        return $jtime;
}

#---------------------------------------------------------------------#
sub jtimelocal1 {
#---------------------------------------------------------------------#
        my ($jyear,$jmonth,$jday,$jhour,$jmin,$jsec) = @_;
        if(   $jyear > 1900) { $jyear -= 1900;}
        elsif($jyear <   70) { $jyear +=  100;}
        $jmonth --;

        $stime = sprintf("%d%02d%02d%02d%02d%02d",
                $jyear,$jmonth,$jday,$jhour,$jmin,$jsec);

        my $imin=1;
        my $imax=2000000000;
        do {
                $imid = int(($imax + $imin)/2);
                my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)
                                        = localtime($imid);
                $itime = sprintf("%d%02d%02d%02d%02d%02d",
                        $year,$mon,$mday,$hour,$min,$sec);
                if($stime < $itime) { $imax = $imid;}
                elsif($stime > $itime) { $imin = $imid;}
                else { $imax = $imid; $imin = $imid;}
        } while(($imax - $imin)>1);
        return $imid;
}

#--------------------------------------------------------------------#
sub jtimeread {
#--------------------------------------------------------------------#
        my (@times) = @_;
        my $stime = join(' ',@times);
        my ($jyear,$jmonth,$jday,$jhour,$jmin,$jsec) =
                                        split(/[-_\.\:\s]/,$stime);
        return($jyear,$jmonth,$jday,$jhour,$jmin,$jsec);
}

#--------------------------------------------------------------------#
sub btimeread {
#--------------------------------------------------------------------#
        my ($stime) = @_;
        @times = split('',$stime);
        $jyear = join('',@times[ 0.. 3]);
        $jmonth= join('',@times[ 4.. 5]);
        $jday  = join('',@times[ 6.. 7]);
        $jhour = join('',@times[ 8.. 9]);
        $jmin  = join('',@times[10..11]);
        $jsec  = join('',@times[12..13]);
        return($jyear,$jmonth,$jday,$jhour,$jmin,$jsec);
}

1;

÷ºÎÆÄÀÏ: jtime.pl jtime.pm
°Ô½Ã¹°: 115 °Ç, ÇöÀç: 1 / 1 ÂÊ
¹øÈ£ Á¦       ¸ñ ÀÛ¼ºÀÚ µî·ÏÀÏ ¹æ¹®
115  perl format JMJS 24.6.22 70
114  perl -p -i -e s/abc/def/g JMJS 24.3.26 92
113  Deleting from a Hash JMJS 24.1.23 103
112  yaml file Àбâ JMJS 23.11.30 142
111  alzipcon JMJS 22.11.26 198
110  file2date.pl JMJS 24.6.1 314
109  UTF-8, EUC-KR JMJS 19.12.15 282
108  wget.pl LWP Simple get JMJS 19.9.17 319
107  X JMJS 19.9.17 312
106  X JMJS 19.9.17 316
105  X JMJS 19.9.17 313
104  X JMJS 19.9.17 312
103  X JMJS 19.9.17 309
102  X JMJS 19.9.17 311
101  X JMJS 19.9.17 311
100  jsame.pl JMJS 09.5.21 1826
99  jos.pl JMJS 08.11.29 1564
98  jmngr.pl - jmjspro manager JMJS 08.11.29 1602
97  vhdl.pm JMJS 08.11.29 1567
96  jreg.pl JMJS 08.11.29 1559
95  jtree.pm JMJS 08.11.29 1634
94  w2c.pl JMJS 08.11.29 1601
93  jdread.pl JMJS 08.11.29 1382
92  ffile.zip ffilediff.pl JMJS 09.4.24 1429
91  rgb2ycbcr.pl JMJS 10.5.12 1732
90  proview.pl JMJS 08.11.29 1773
89  smi_shift.pl JMJS 10.10.3 1403
88  srt2smi.pl srtshift.pl JMJS 18.7.14 1602
87  Perl CGI Input Test, getenv.cgi JMJS 18.11.21 1268
86  hash JMJS 24.6.22 1549
85  tr a-z A-Z ġȯ , ´ë¼Ò¹®ÀÚ º¯È¯ , ¹®ÀÚ¿­ Á¶°Ç , ... JMJS 24.6.22 1349
84  JARRAY->jfunc JMJS 08.10.2 1318
83  ¼öÄ¡ÇÔ¼ö - ... JMJS 09.5.7 1787
82  ¿ªÇà·Ä3x3 JMJS 09.5.7 1843
81  hex2int.pl JMJS 10.9.12 2563
80  stat - file status º¸±â JMJS 07.12.16 1431
79  Perl Tip JMJS 24.6.22 2575
78  SMI file sync delay JMJS 07.7.18 1534
77  rmword.pl JMJS 07.6.18 1448
76  pack unpack JMJS 24.6.22 1349
75  [Perl]read_dir.pl JMJS 07.2.22 1632
74  [Perl]jtab2char - tab¹®ÀÚ¸¦ ƯÁ¤ char·Î ¹Ù²ãÁÖ±â JMJS 07.2.22 1595
73  Perl ¼ýÀÚ Sorting JMJS 11.5.17 1684
72  [CGI]GET and POST JMJS 06.11.20 3345
71  Perl Grammer JMJS 06.9.4 2925
70  Ç¥ÁØ ¸ðµâ JMJS 06.8.10 1827
69  Getopt::Long example JMJS 06.8.10 2021
68  array of array JMJS 06.4.22 1423
67  [HTML]Å×ÀÌºí ¹è°æ¿¡ ±×¸²³Ö±â JMJS 06.3.8 1513
66  l2w.pm - line to word JMJS 08.12.1 1505
65  make_random_chars JMJS 05.8.10 1351
64  mail º¸³»´Â script JMJS 05.3.23 1319
63  ½ÇÇàÆÄÀÏÀ» ½ÇÇà½ÃÅ°°í Ç¥ÁØ¿¡·¯ Àбâ JMJS 09.2.25 1325
62  Æ˾÷â(°øÁöâ)¶ç¿ì±â Jinsung 03.12.16 2428
61  print <<ENDLINE JMJS 03.12.5 1422
60  [HTML]Target JMJS 03.5.21 1446
59  [Perl]jutil.pm JMJS 03.5.3 1699
58  [Perl]jdiff.pl JMJS 02.6.6 1594
57  [Perl]cfilter.pm - commant filter JMJS 02.1.31 1631
56  [HTML]ÀÚµ¿À¸·Î ´Ù¸¥ ÆäÀÌÁö À̵¿ JMJS 02.1.19 1465
55  STDIN file open glob -w warning JMJS 24.6.22 1502
54  opendir , readdir , closedir JMJS 24.6.22 1505
53  rand_diff JMJS 01.10.23 1401
52  vcd2v.pl JMJS 15.8.25 1470
51  file upload JMJS 24.6.22 1423
50  umask(070) <- chmod o-rwx Áø¼º 01.3.16 1578
49  head2index Áø¼º 01.3.15 1277
48  grep.pl JMJS 11.1.20 1400
47  chr(13) = \M Áø¼º 01.3.15 1269
46  stty JMJS 01.3.12 1379
45  des.pl JMJS 01.3.8 1344
44  chr_plus.pl JMJS 01.3.8 1355
43  get passwd in unix JMJS 19.8.18 1203
42  unsort JMJS 19.9.10 1438
41  read from website web JMJS 19.5.15 1241
40  vec JMJS 01.3.8 1497
39  chomp $_ @_ say defined use 5.010 state grep any ... JMJS 18.10.27 1422
38  [Perl Tk] µµ½ºÃ¢ ¾øÀÌ, ÆÞ Tk ½ºÅ©¸³Æ® ½ÇÇàÇϱâ; ... JMJS 17.9.30 1375
37  @bs = sort {$a <=> $b} @as; JMJS 17.7.12 1454
36  if ( -e -z -s -f -d -T -B -M ) JMJS 16.3.10 1538
35  mkmm.pl - make freemind JMJS 12.5.22 1486
34  perl -pi.orig -e "s/\bu_(\w+_t)\b/u$1/g" *.c JMJS 11.8.26 1484
33  .xls output csv ÆÄÀÏ¿¡ \n "°¡ ÀÖÀ»¶§ JMJS 11.4.13 1366
32  jdcat.pl juncat.pl JMJS 11.2.24 1512
31  print chr(ord('a')); JMJS 01.3.8 1424
30  require "/user/home/jin1/jin1.pm"; JMJS 00.11.28 1369
29  for(my $i=0; $i < @abc; $i ++) {} JMJS 00.11.15 1454
28  remove blank $abc =~ s/[\s]+//g; JMJS 00.11.15 1397
27  array and for JMJS 00.11.14 1239
26  È¨ÆäÀÌÁö ÀÚµ¿ À̵¿ JMJS 00.10.28 1297
25  html¿¡¼­ ¾²ÀÌ´Â ±âȣǥ½Ã¹æ¹ý JMJS 00.9.30 1252
24  ¹è¿­ÀÇ ¹üÀ§ ¿¬»êÀÚ JMJS 00.9.20 1546
23  for(1..3) { print "$_";} JMJS 09.4.24 1231
22  package JMJS 24.6.22 1298
21  ÁÙ¿¡¼­ ÇѱÛÀÚ °íÄ¡±â JMJS 00.8.7 1350
20  hotkey function by getc JMJS 00.7.21 1452
19  read, sysread, syswrite JMJS 00.7.21 2264
18  crypt JMJS 00.7.13 1564
17  csv2gan.pl JMJS 11.4.4 1568
16  hexa JMJS 24.6.18 1395
15  file in out.pl JMJS 00.7.5 1584
14  ARGV JMJS 00.7.5 1418
13  jtime.pm - localtime, timelocal JMJS 09.4.9 1932
12  @INC JMJS 00.7.5 1770
11  $#myarray JMJS 00.7.5 1531
10  Hash of Array JMJS 00.7.5 1345
9  package JARRAY JHASH JMJS 00.7.4 1586
8  foreach, while each, dos2unix.pl, next last JMJS 09.4.24 1558
7  X JMJS 24.6.22 1363
6  file lock JMJS 00.7.4 1487
5  gettime JMJS 00.7.4 1450
4  [Perl]jcdread.pl JMJS 00.7.4 1531
3  [Perl]jdread.pl JMJS 00.7.4 1435
2  Monti Hall problem JMJS 24.6.27 1423
1  DESTROY JMJS 09.7.20 1377
[1]