作业帮 > 综合 > 作业

Shell编程符号「*)」的表示意义

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/26 15:45:09
Shell编程符号「*)」的表示意义
cat ${PARAFILE} | sed s/AA/aa/g while read cline;
do
case ${cline} in
${CCLASS}*) CLASS=`echo ${cline} | cut -c${start_pos}-${end_pos}` ;;
${CID}*)ID=`echo ${cline} | cut -c${start_pos}-${end_pos}` ;;
esac
echo ${cline} >> test.txt
done
其中,{PARAFILE}是一个文件.
CCLASS 和 CID都是定义的固定值
CLASS 和 ID是变量
start_pos和end_pos是为截取固定位数字符定义的常量
看不懂${CCLASS }*) CLASS =`echo ${cline} | cut -c${start_pos}-${end_pos}`
中,「*)」这个符号是什么意思
Shell编程符号「*)」的表示意义
你应该把星号和前面的变量合起来看
${CCLASS}* 表示以${CCLASS}为开头的值, 后面的 ")" 这个是case 语句用的
假设 cline="ABCD"
CCLASS=A, CID=B
那么
case ${cline} in
${CCLASS}* ) echo "A" ;;
$(CID}*) echo "B";;
esac
的结果就是输出 A, 因为cline是以A开头的, 满足 A* 的条件