2006年3月16日の日記の1番目の記事へのコメント
■AA折れ線グラフ
こうですか!?わかりません!
#!/bin/sh usage() { echo $0 '[RFC]*' } if [ $# -eq 0 -o "x$1" = "x" ]; then usage exit 1 fi if ( echo $1 | grep '^[RCF]*$' > /dev/null ); then : else echo "inavlid input string" exit 1 fi IN=$1 PREV="" PTR=1 OUT=':' while [ "x$IN" != "x" ]; do CUR=`echo $IN | head -c 1` IN=`echo $IN | sed -e 's/^.//'` NEW=`echo $OUT | sed -e 's/^\([^:]*\):.*$/\1/g' | sed -e 's/./x/g'` case $PREV$CUR in RR|RC) # up if [ $PTR -eq 1 ]; then OUT=`echo $NEW:$OUT` else PTR=`expr $PTR - 1` fi ;; CF|FF) # down if [ $PTR -eq `echo $OUT | wc -l` ]; then OUT=`echo $OUT$NEW:` fi PTR=`expr $PTR + 1` ;; RF|CR|CC|FR|FC|*) ;; esac OUT=`echo $OUT | sed -e 's/:/\n/g' | gawk -v CUR=$CUR -v PTR=$PTR 'NR==PTR{printf("%s%s:",$0,CUR);} NR!=PTR{if ($0 != "") printf("%sx:",$0);}'` PREV=$CUR done echo $OUT | tr RFC /\\\\_ | sed -e 's/:/\n/g' | sed -e 's/x/ /g'
今更で,何のひねりも無い上に,驚異的遅さ.
[コメントを書く]
2006年3月16日の日記の1番目の記事へのコメント
- if [ $PTR -eq `echo $OUT | wc -l` ]; then
+ if [ `expr $PTR + 1` -eq `echo $OUT | sed -e 's/:/\n/g' | wc -l` ]; then
あと
NEW=`echo $OUT | sed -e 's/^\([^:]*\):.*$/\1/g' | sed -e 's/./x/g'`
はループの最後で
NEW="${NEW}x"
で十分ですな(;´Д`)