ファイル名を取得する関数
#f_askfname() - ファイル名を取得 #引数1 入力メッセージ #引数2 0:入力必須 1:未入力有効 #引数3 初期ファイル名(省略可、引数2が0の場合のみ有効) #戻り値 0:入力あり 1:入力なし _STR:入力文字列 # ask_fname(){ while :; do echo -n "$1" read _STR if [ ! "${_STR}" ]; then if [ $2 -eq 1 ]; then return 1 elif [ $# -ge 3 ]; then _STR=$3 fi fi if [ ! "${_STR}" ]; then continue elif [ -f "${_STR}" ]; then return 0 else echo "\"${_STR}\" is not file." fi done }
$ . f_askfname.sh $ ask_fname abc 0 1 abc 1 "1" is not file. abc f_askfname.sh