[color=blue:65ba18c9cd]
中国农业银行电子汇兑系统已在全国开通近四年了,这四年来,由于该系统具有较高的科学性和较好的稳定性,深得各经办行用户的好评和欢迎。但也有不足的地方,如这几年来行名行号库已变动了几十期,一年之内都要变动几次,而该系统又没有一个直接查询行名行号的功能,这就给电子汇兑的经办员带来很多不便(有时由于客户填写的电汇凭证汇入行模糊不清,或是新到岗的联行人员由于记不住过多的行名行号),根据这一缺陷,本人用grep和cut命令编写了一个小的shell程序,用行号查询能查出唯一的行,用行名查询能查出同一地区所有的行,如输入″8325″就能查出″汶川县支行″,输入″汶川″就能查出汶川县支行及全辖的其它几个经办行,经过我行全辖几个电子汇兑经办行联行人员的使用,一致认为很适用,现推广给大家一试。
首先,建立一个dzhdcx的用户,其属组为dzhd,使其和dzhd用户的属组一致。在dzhdcx的用户目录下建立三个文件cxxt(查询系统)、cxhh(查询行号)、cxhm(查询行名),其思路是在/usr/dzhd/dat3/fsc1(全国行名行号库)或fsc2(省辖行名行号库)两文件中,用grep命令把含有要查找的字符串的行都全部找出来重定向到一个aaa文件中,再用cut命令保留其相应的部分后再重定向到bbb文件中,再用grep命令就能找出含有要查找字符串的唯一行,然后重定向到文件ccc,然后显示文件ccc的内容就是要查找的行名行号。各文件的内容如下:
cxxt文件的内容如下:
:
#
whiletrue
do
clear
echo“\33[19;38H\c”
readxz
case$xzin
1)shcxhh
readok;;
2)shcxhm
readok;;
3)sttyisig;clear;
exit0;;
esac
done
cxhh文件的内容如下:
:
#
echo“\n\n\t\t\t查询全国键入1,查询省辖键入2:\c”
readxz
case$xzin
1)echo″\t\t\t\t请输入行号:\c″
readhh
clear
grep$hh/usr/dzhd/dat3/fsc1>aaa
cut-c5-62aaa>bbb
grep$hhbbb>ccc
echo″\n\n\n″
catccc
rmaaabbbccc
echo″\n\n\t\t查询完毕,请按回车键!!!″;;
2)echo″\t\t\t\t请输入行号:\c″
readhh
clear
grep$hh/usr/dzhd/dat3/fsc2>aaa
cut-c6-63aaa>bbb
grep$hhbbb>ccc
echo″\n\n\n″
catccc
rmaaabbbccc
echo″\n\n\t\t查询完毕,请按回车键!!!″;;
esac
cxhm文件的内容如下:
:
#
echo″\n\n\t\t\t查询全国键入1,查询省辖键入2:\c″
readxz
case$xzin
1)echo″\t\t\t\t请输入行名:\c″
readhm
clear
grep$hm\usr\dzhd\dat3\fsc1>aaa
cut-c5-62aaa>bbb
echo″\n\n\n″
catbbb
rmaaabbb
echo″\n\n\t\t查询完毕,请按回车键!!!″;;
2)″\t\t\t\t请输入行名:\c″
readhm
clear
grep$hm\usr\dzhd\dat3\fsc2>aaa
cut-c6-63aaa>bbb
echo″\n\n\n″
catbbb
rmaaabbb
echo″\n\n\t\t查询完毕,请按回车键!!!″;;
esac□
张友富(中国农业银行四川省汶川县支行,四川 汶川 623000)
[/color:65ba18c9cd]
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/