Perl ¤ÎÎãÂê

£·. Æü»þ¤ÎÊѹ¹

¡¡¡¡¥·¥¹¥Æ¥àÆüÉդȻþ¹ï¤òÊѹ¹¤·¤Þ¤¹¡£windows ¤Î¡¡msdos ¥³¥Þ¥ó¥É¤Ë¤Ï¡¢ÆüÉÕ¤òÊѹ¹¤¹¤ë date ¥³¥Þ¥ó¥É¡¢»þ¹ï¤òÊѹ¹¤¹¤ë time ¥³¥Þ¥ó¥É¤¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¥³¥ó¥È¥í¡¼¥ë¥Ñ¥Í¥ë¤«¤é¡ÖÆüÉդȻþ¹ï¡×¤Ç¤â²Äǽ¤Ç¤¹¡£¤³¤³¤Ç¤Ï¡¢perl ¤Ë¤è¤ëÊѹ¹¥Ä¡¼¥ë¤ò¾Ò²ð¤·¤Þ¤¹¡£




¡¡1.»ÅÍÍ


¢£µ¡Ç½ ¡¦»ØÄêÆüÉÕ¡¢»þ¹ï¤ËÊѹ¹¤¹¤ë ¡¦£¶Éøå¤Ë¡¢¸µ¤ÎÆüÉÕ¡¢»þ¹ï¤ËÌ᤹
¢£Æ°ºî´Ä¶­ [Windows ÈÇ] -- Windows 95/NT/98/Me/2000 Âбþ Active Perl 5.6.1.630 FreeWare (http://www2j.biglobe.ne.jp/~apollo/server/server.html)
¢£¼Â¹Ô´Ä¶­ ¡¦¼Â¹Ô¥â¥¸¥å¡¼¥ë: timeset0.pl yyyy-mm-dd hh:mm:ss.uu ¡¡¢¨msdos ¤Î date yyyy-mm-dd time hh:mm:ss.uu ¤ÈƱ¤¸µ¡Ç½¤Ç¤¹¡£ ¡¡¢¨unix ¤Ç¤â¡¢¤½¤Î½èÍý·Ï¤Î¥³¥Þ¥ó¥É·Á¼°¤Ë¤¢¤ï¤»¤ì¤Ð¼Â¹Ô²Äǽ¤Ç¤¹¡£
¢£°ú¿ô ¡¦Ç¯·îÆü¡¡¡¡¡¡Îã¡¡2002-09-15 ¡¦»þ¹ï¡¡¡¡¡¡¡¡Îã¡¡09:10:11


¡¡2.¥×¥í¥°¥é¥ß¥ó¥°

»ÅÍͤˤâ¤È¤Å¤­¡¢Perl ¤Ç¥³¡¼¥Ç¥£¥ó¥°¤¹¤ë¤È¡¢¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£

¥³¡¼¥Ç¥£¥ó¥°¡¡Îã
#!/usr/local/bin/perl ####################################################################### # timeset0.pl : Active Perl # Copyright(C)2002 Sannomiya , All Rights Reserved. # ÆüÉÕÊѹ¹¤Ç¤­¤ë¥Ä¡¼¥ë ####################################################################### # # ÍúÎò # 2002.09.12 Ver 1.00 ¿·µ¬ºîÀ® ####################################################################### $jisa = 6; ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time); $year=$year+1900; $mon=$mon+1; printf ("this date : %04d-%02d-%02d time : %02d:%02d:%02d\n", $year,$mon,$mday,$hour,$min,$sec); # date Êݸ $back1 = sprintf("date %04d-%02d-%02d",$year,$mon,$mday); # time Êݸ $back2 = sprintf("time %02d:%02d:%02d.00",$hour,$min,$sec+$jisa); $cmd = @ARGV[0]; $ret = system("date $cmd"); # ÆüÉÕÊѹ¹ if ( $ret == 127 ) { print STDERR "Execution error occur on date\n"; exit 1; } $cmd = @ARGV[1]; $ret = system("time $cmd"); # »þ¹ïÊѹ¹ if ( $ret == 127 ) { print STDERR "Execution error occur on time\n"; exit 1; } printf ("change date : %s time : %s\n",@ARGV[0],@ARGV[1]); sleep $jisa; $ret = system($back2); # »þ´Ö¤òÌ᤹ if ( $ret == 127 ) { print STDERR "Execution error occur on time_back\n"; exit 1; } $ret = system($back1); # ÆüÉÕ¤òÌ᤹ if ( $ret == 127 ) { print STDERR "Execution error occur on date_back\n"; exit 1; } exit 0; ##########End_Of_Script




¡¡3.¼Â¹Ô·ë²Ì

ËÜÅö¤ËÊѤï¤Ã¤¿¤«¤Ï¡¢Ê̤Πmsdos ¥¦¥¤¥ó¥É¥¦¤ò³«¤¤¤Æ¡¢£¶ÉäÎÂÔ¤Á¤Î´Ö¤Ë date/time ¥³¥Þ¥ó¥É ¤ò¼Â¹Ô¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

C:\perl_test>timeset0.pl 2002-10-10 12:00:00
this   date : 2002-09-13 time : 16:54:08
change date : 2002-10-10 time : 12:00:00
(6 ÉÃÂÔ¤Á)
back   date : 2002-09-13 time : 16:54:14
C:\perl_test>


¢¨¤³¤ì¤À¤±¤Ê¤é²¿¤â°ÕÌ£¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ÌÜŪ¤Ë±þ¤¸¤ÆÍøÍѤ·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£