. f_askfname.sh
. f_askstring.sh
. f_chknum.sh
ask_filename "Target File( Blank is Cancel. ) : " 1
if [ $? -ne 0 ]; then
echo "*** Canceled."
return 1
fi
FILE1=${_STR}
echo "Target File is \"${FILE1}\""
ask_string "Save file [${FILE1}.key] : " 1
if [ $? -ne 0 ]; then
FILE2="${FILE1}.key"
else
FILE2=${_STR}
fi
echo "Save File is \"${FILE2}\""
while : ; do
ask_string "Sort Key Number( Blank or 0 is END. ): " 1
if [ $? -ne 0 ]; then
_STR=0
break
fi
check_num ${_STR}
if [ $? -eq 0 ]; then
break
fi
done
KEYNUM=${_STR}
if [ ${KEYNUM} -eq 0 ]; then
echo "***Canceled."
else
echo "Sort Key Filed is \"${KEYNUM}\""
sort -n -k ${KEYNUM} -o ${FILE2} ${FILE1}
echo "*** Successful."
fi
unset FILE1 FILE2 KEYNUM _STR
$ cat 1.txt
1 g
2 f
3 e
4 d
5 c
6 b
7 a
$ ./sortkey.sh
Target File( Blank is Cancel. ) : 1.txt
Target File is "1.txt"
Save file [1.txt.key] :
Save File is "1.txt.key"
Sort Key Number( Blank or 0 is END. ): 2
Sort Key Filed is "2"
*** Successful.
$ cat 1.txt.key
7 a
6 b
5 c
4 d
3 e
2 f
1 g