注意事项
cat data | sh xxx.sh # .sh 获取不到 | 的结果
cat data | python xxx.py # √
批量请求
sh batch_request.sh query.txt
#! /bin/bash
echo $1
while read line;do
sh request.sh ${line}
echo -e "\n"
done <$1
"一站式"流水线
sh auto.sh query/dy.query 2
#! /bin/bash
# Usage: sh auto.sh query/dy.query 2
# 参数检查
if [ $# -eq 0 ]; then
echo "Usage: sh auto.sh \${query_path} \${wanted_item_num}"
exit 1
fi
# 参数提取
query_file=$1
xxx=`echo "${query_file}" | awk -F '/' '{print $NF}'`
echo "query_file: ${xxx}"
# 创建输出目录
# query_file 默认 以.query 结尾
query_dir=`echo "$query_file" | awk -F '.query' '{print $1}'`
echo "mkdir ${query_dir}"
mkdir ${query_dir}
# 请求
echo "Run: sh batch_request.sh ${query_file} > ${query_dir}/${xxx}.info"
sh batch_request.sh ${query_file} > ${query_dir}/${xxx}.info
# hold
query_num=`wc -l $1 | awk -F ' ' '{print $1}'`
echo "query_num: ${query_num}"
sleep_time=$(($query_num / 5))
CURRENT_TIME=$(date +"%T")
echo "Sleeping at ${CURRENT_TIME} for ${sleep_time} seconds"
sleep ${sleep_time}
echo 'Sleep done'
# 解析
echo "Run: python3 parse_frondend_info.py ${query_dir}/${xxx}.info > ${query_dir}/${xxx}.info.parse"
python3 parse_frondend_info.py ${query_dir}/${xxx}.info > ${query_dir}/${xxx}.info.parse
# 统计
echo "Run: cat ${query_dir}/${xxx}.info.parse | grep 0$ > ${query_dir}/${xxx}.info.parse.norecall"
cat ${query_dir}/${xxx}.info.parse | grep 0$ > ${query_dir}/${xxx}.info.parse.norecall
if [ $# -lt 2 ]; then
wanted_item_num=2
else
wanted_item_num=$2
fi
echo "wanted_item_num: ${wanted_item_num}"
echo "Run: awk '\$2 > 0 && \$2 < ${wanted_item_num}' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.lackrecall"
awk '$2 > 0 && $2 < wanted_item_num' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.lackrecall
echo "Run: awk '\$2 = ${wanted_item_num}' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.preciserecall"
awk '$2 = wanted_item_num' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.preciserecall
echo "Run: awk '\$2 > ${wanted_item_num}' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.surplusrecall"
awk '$2 > wanted_item_num' ${query_dir}/${xxx}.info.parse > ${query_dir}/${xxx}.info.parse.surplusrecall
echo "----------------------------------------------------"
echo "PLEASE CHECK `wc -l ${query_dir}/${xxx}.info.parse.norecall` !!!"
echo "PLEASE CHECK `wc -l ${query_dir}/${xxx}.info.parse.lackrecall`"
echo "PLEASE CHECK `wc -l ${query_dir}/${xxx}.info.parse.preciserecall`"
echo "PLEASE CHECK `wc -l ${query_dir}/${xxx}.info.parse.surplusrecall`"
写在最后:若本文章对您有帮助,请点个赞啦 ٩(๑•̀ω•́๑)۶