#! /bin/csh -f #"createindexhtml" #Create "index.html" file for the current directory. #Ver 0.54 : 2003/12/3 # - --force or -f オプションで既存のindex.htmlを上書きするように修正 # - リストから$INDEXHTMLを除去しているつもりだったのができていなかったので修正 #Ver 0.53 : 2003/7/30 # - 名前を環境変数から取得するように変更 #Ver 0.52 : 2003/6/5 # - 出力ファイルをパラメータ化($INDEXHTML) # - 自分自身($INDEXHTML)がリストに入らないように修正 #Ver 0.51 : 2003/6/3 # - index.htmlが存在すると動かないように修正 # - index.htmlまでがリスト化されてしまうバグを修正 # - サイズがきれいに並ぶように修正 # - ファイル名長が32文字以内なら版組が崩れないように修正 #Author : Kentaro Motohara (kmotohara@ioa.s.u-tokyo.ac.jp) set MAILADDRESS="kmotohara@ioa.s.u-tokyo.ac.jp" set TMPFILE=/tmp/htmltmp set INDEXHTML="index.html" if ( "$1" != "--force" && "$1" != "-f" && -f ${INDEXHTML} ) then echo "Error: $INDEXHTML exists." exit 1 endif ls -ldF * | gawk '{m=$6;d=$7;t=$8;date=sprintf("%s-%02d-%s",m,d,t);s=$5;f=$9;n=gsub("\/","",f);if(n>0)s="-";else if(s>1024&&s<=1048576){s=int(s/1024);s=sprintf("%dk",s)}else if(s>1048576){s=int(s/1048576);s=sprintf("%dM",s)}printf("%s\t%s\t%s\n",f,s,date)}' | sed 's/*//g' | sed "/$INDEXHTML/d" | sed '/createhtml/d' > $TMPFILE set DIRNAME=`pwd | gawk '{n=split($1,a,"\/");print(a[n])}'` set DATE=`date +%c` echo $DIRNAME echo $DATE cat << EOF > $INDEXHTML
Name Last modified Size Description
EOF gawk '{l=length($1);size=$2;n=gsub("M","M",size);n+=gsub("k","k",size);if(n==0)size=sprintf("%s ",size);lsize=length(size);sp="";spsize="";for(i=1;i<32-l;i++)sp=sprintf("%s ",sp);for(i=1;i<8-lsize;i++)spsize=sprintf("%s ",spsize);printf("%s%s\t%s\t %s%s\n",$1,$1,sp,$3,spsize,size)}' $TMPFILE >> $INDEXHTML cat << EOF >> $INDEXHTML