メモを読み出す

#!/bin/sh
#memo_view.sh

. f_askstring.sh
. f_chknum.sh
. f_chkdate.sh
. f_search_memo.sh
. f_readline.sh
. f_dispmemo.sh

MEMOFILE=memo.txt
MEMOTEMP=memo.tmp

while : ; do
    echo ""
    echo "*** Select search Menu ***"
    echo "1) Date."
    echo "2) Title."
    echo "3) Keyword."
    echo "4) -> Quit."
    echo ""
    echo -n "Select number : "
    read SELNUM
    check_num $SELNUM
    if [ $? -eq 0 ]; then
        if [ $SELNUM -ge 1 -a $SELNUM -le 4 ]; then
            break
        fi
    fi
done

if [ $SELNUM -eq 4 ]; then
    unset SELNUM
    echo "*** End."
    exit 0
fi

case $SELNUM in
    1) search_date ; ;;
    2) search_title ; ;;
    3) search_keyword ; ;;
esac

MAXCNT=$(cat ${MEMOTEMP} | wc -l)
if [ $MAXCNT -eq 0 ]; then
    echo "*** NO Data."
    exit 1
elif [ $MAXCNT -eq 1 ]; then
    read_line ${MEMOTEMP} 1
    disp_memo $_BUF
    exit 0
fi

echo ""
echo "  NO.     Date    Title"
echo "-------------------------------"
cat -n ${MEMOTEMP} | cut -f 1,2,4

while : ; do
    echo ""
    echo -n "Select Number : "
    read SELNUM
    check_num $SELNUM
    if [ $? -eq 0 ]; then
        if [ $SELNUM -ge 1 -a $SELNUM -le $MAXCNT ]; then
            break
        fi
    fi
done

read_line ${MEMOTEMP} ${SELNUM}
if [ $? -ne 0 ]; then
    echo "File Read Error."
else
    disp_memo $_BUF
fi

unset SELNUM MEMOFILE MEMOTEMP _STR KEYWORD _BUF
$ ./memo_view.sh 

*** Select search Menu ***
1) Date.
2) Title.
3) Keyword.
4) -> Quit.

Select number : 1
Input Search Date : 1128
-------------------------
Data  : 09/11/28 18:06
Title : あいうえお
Text  : かきくけこ

$ ./memo_view.sh 

*** Select search Menu ***
1) Date.
2) Title.
3) Keyword.
4) -> Quit.

Select number : 2
Inpput Search Title : あいうえお
-------------------------
Data  : 09/11/28 18:06
Title : あいうえお
Text  : かきくけこ

$ ./memo_view.sh 

*** Select search Menu ***
1) Date.
2) Title.
3) Keyword.
4) -> Quit.

Select number : 3
Input Search Keyword : かき
-------------------------
Data  : 09/11/28 18:06
Title : あいうえお
Text  : かきくけこ