2008/01/02投稿 csh で書いた日付など

一度閉鎖したブログをまた復活する目的に、過去の記事を採掘するという普通の人にはありえない事をしています。

3日前をcsh で求めるとき、
#!/bin/csh
set REQDAY = 3
@ REQDAY = 24 * $REQDAY - 9
set YMD=`env TZ=JST+$REQDAY date '+%Y%m%d'`
set NOW = `date '+%Y%m%d'`
echo "date $NOW - 3 --> $YMD"

Perlで書くと、
set REQDAY = 3
set YMD=`perl -e '($s,$n,$h,$d,$m,$y)=localtime(time()-86400 * $ARGV[0]);printf("%04d%02d%02d",$y+1900,$m+1,$d);' $REQDAY`
echo "date $NOW - 3 --> $YMD"

指定日 - 3 days
set YEAR = 2007
set MONTH = 3
set DAY = 11
set REQDAY = 3
set YMD=`perl -e 'use Time::Local; $t=timelocal(0,0,0,$ARGV[2],$ARGV[1]-1,$ARGV[0]-1900);($s,$n,$h,$d,$m,$y)=localtime($t-86400 * $ARGV[3]);printf("%04d%02d%02d",$y+1900,$m+1,$d);' $YEAR $MONTH $DAY $REQDAY`
echo "20070311 - $REQDAY day = $YMD"
**********************************************
SQL Plus でよく打ち込む、おまじない。
alter session set nls_date_format='yyyy/mm/dd hh24:mi:ss';
set long 1000
set loboffset
set linesize 1000